This series contains a couple of fixes and code simplifications around qgroup and delayed node interation. The first 3 patches fix 2 separate issues - one possible underflow when freeing qgroup-reserved space and the other one is a deadlock. Next 3 patches build on the fixes to clean up and simplify qgroup's flushing code.
Nikolay Borisov (6): btrfs: Free correct amount of space in btrfs_delayed_inode_reserve_metadata btrfs: Export qgroup_reserve_meta btrfs: Don't flush from btrfs_delayed_inode_reserve_metadata btrfs: Cleanup try_flush_qgroup btrfs: Remove btrfs_inode from btrfs_delayed_inode_reserve_metadata btrfs: Simplify code flow in btrfs_delayed_inode_reserve_metadata fs/btrfs/delayed-inode.c | 32 +++++++------------------------- fs/btrfs/inode.c | 2 +- fs/btrfs/qgroup.c | 39 +++++++++------------------------------ fs/btrfs/qgroup.h | 3 +++ 4 files changed, 20 insertions(+), 56 deletions(-) -- 2.25.1