btrfs: don't run delayed refs in the end transaction logic
authorJosef Bacik <josef@toxicpanda.com>
Mon, 3 Dec 2018 15:20:37 +0000 (10:20 -0500)
committerDavid Sterba <dsterba@suse.com>
Mon, 17 Dec 2018 13:51:47 +0000 (14:51 +0100)
commitdb2462a6ad3dc490ac33250042e728226ef3ba00
treed2ed72b021d72acb68b4bfc9e41ec66ec4d9ebde
parent64403612b73a94bc7b02cf8ca126e3b8ced6e921
btrfs: don't run delayed refs in the end transaction logic

Over the years we have built up a lot of infrastructure to keep delayed
refs in check, mostly by running them at btrfs_end_transaction() time.
We have a lot of different maths we do to figure out how much, if we
should do it inline or async, etc.  This existed because we had no
feedback mechanism to force the flushing of delayed refs when they
became a problem.  However with the enospc flushing infrastructure in
place for flushing delayed refs when they put too much pressure on the
enospc system we have this problem solved.  Rip out all of this code as
it is no longer needed.

Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/transaction.c