btrfs: stop running all delayed refs during snapshot
authorJosef Bacik <josef@toxicpanda.com>
Fri, 18 Dec 2020 19:24:25 +0000 (14:24 -0500)
committerDavid Sterba <dsterba@suse.com>
Mon, 8 Feb 2021 21:58:57 +0000 (22:58 +0100)
commitdac348e9257051e7a39224747695b53e3fc737d7
tree6c83d55890e180146877a5ed3851d0bb468f4113
parentb7774425e0c08d8558be3a072b0c3e0b806b95f6
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 <josef@toxicpanda.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/transaction.c