From: Josef Bacik Date: Fri, 18 Dec 2020 19:24:25 +0000 (-0500) Subject: btrfs: stop running all delayed refs during snapshot X-Git-Tag: accepted/tizen/unified/20230118.172025~7495^2~128 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=dac348e9257051e7a39224747695b53e3fc737d7;p=platform%2Fkernel%2Flinux-rpi.git btrfs: stop running all delayed refs during snapshot This was added in commit 361048f586f5 ("Btrfs: fix full backref problem when inserting shared block reference") to address a problem where we hit the following BUG_ON() in alloc_reserved_tree_block if (node->type == BTRFS_SHARED_BLOCK_REF_KEY) { BUG_ON(!(flags & BTRFS_BLOCK_FLAG_FULL_BACKREF)); However this BUG_ON() is bogus, and was removed by previous commit: btrfs: remove bogus BUG_ON in alloc_reserved_tree_block We no longer need to run delayed refs because of this, and can remove this flushing here. Signed-off-by: Josef Bacik Signed-off-by: David Sterba --- diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c index dbbd464..02592c6 100644 --- a/fs/btrfs/transaction.c +++ b/fs/btrfs/transaction.c @@ -1749,12 +1749,6 @@ static noinline int create_pending_snapshot(struct btrfs_trans_handle *trans, } } - ret = btrfs_run_delayed_refs(trans, (unsigned long)-1); - if (ret) { - btrfs_abort_transaction(trans, ret); - goto fail; - } - fail: pending->error = ret; dir_item_existed: