btrfs-progs: clear root dirty when we update the root
We don't currently use the bit to track whether or not the root is dirty, but when we sync ctree.c it uses this bit to determine if we should add the root to the dirty list. Clear this bit when we update the root so that the dirty tracking works properly when we sync ctree.c. Signed-off-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
ba01aadff1
commit
db7157d912
|
@ -15,6 +15,7 @@
|
|||
*/
|
||||
|
||||
#include "kerncompat.h"
|
||||
#include "kernel-lib/bitops.h"
|
||||
#include "kernel-shared/disk-io.h"
|
||||
#include "kernel-shared/transaction.h"
|
||||
#include "kernel-shared/delayed-ref.h"
|
||||
|
@ -119,6 +120,7 @@ int commit_tree_roots(struct btrfs_trans_handle *trans,
|
|||
next = fs_info->dirty_cowonly_roots.next;
|
||||
list_del_init(next);
|
||||
root = list_entry(next, struct btrfs_root, dirty_list);
|
||||
clear_bit(BTRFS_ROOT_DIRTY, &root->state);
|
||||
ret = update_cowonly_root(trans, root);
|
||||
free_extent_buffer(root->commit_root);
|
||||
root->commit_root = NULL;
|
||||
|
|
Loading…
Reference in New Issue