linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] btrfs: Delay block group auto removal to avoid interfering qgroups
@ 2018-05-28  6:58 Qu Wenruo
  2018-05-28  6:58 ` [PATCH 1/3] btrfs: trace: Add trace points for unused block groups Qu Wenruo
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Qu Wenruo @ 2018-05-28  6:58 UTC (permalink / raw)
  To: linux-btrfs

The patchset can be fetched from github:
https://github.com/adam900710/linux/tree/delayed_bg_removal

It's based on v4.17-rc5 branch.

This bug is reported from SUSE openQA, although it's pretty hard to hit
in real world (even real world VM), it's believed block group auto
removal (anyway, there isn't much thing can remove a chunk mapping in
btrfs) could interfere with qgroup's search on commit root.

Full details can be found in the 3rd patch.

The patchset uses 2 submitted cleanup/refactor patches as basis, and the
3rd patch will ensure unused block group will only be deleted after
current transaction is done.

Qu Wenruo (3):
  btrfs: trace: Add trace points for unused block groups
  btrfs: Use btrfs_mark_bg_unused() to replace open code
  btrfs: Delayed empty block group auto removal to next transaction

 fs/btrfs/ctree.h             |  2 ++
 fs/btrfs/extent-tree.c       | 62 ++++++++++++++++++++++++++----------
 fs/btrfs/scrub.c             |  8 +----
 fs/btrfs/transaction.c       |  7 ++++
 fs/btrfs/transaction.h       | 10 ++++++
 include/trace/events/btrfs.h | 42 ++++++++++++++++++++++++
 6 files changed, 107 insertions(+), 24 deletions(-)

-- 
2.17.0


^ permalink raw reply	[flat|nested] 6+ messages in thread
* [PATCH 0/3] btrfs: Delay block group auto removal to avoid interfering qgroups
@ 2018-05-28  9:20 Qu Wenruo
  2018-05-28  9:20 ` [PATCH 2/3] btrfs: Use btrfs_mark_bg_unused() to replace open code Qu Wenruo
  0 siblings, 1 reply; 6+ messages in thread
From: Qu Wenruo @ 2018-05-28  9:20 UTC (permalink / raw)
  To: linux-btrfs

The patchset can be fetched from github:
https://github.com/adam900710/linux/tree/delayed_bg_removal

It's based on v4.17-rc5 branch.

This bug is reported from SUSE openQA, although it's pretty hard to hit
in real world (even real world VM), it's believed block group auto
removal (anyway, there isn't much thing can remove a chunk mapping in
btrfs) could interfere with qgroup's search on commit root.

Full details can be found in the 3rd patch.

The patchset uses 2 submitted cleanup/refactor patches as basis, and the
3rd patch will ensure unused block group will only be deleted after
current transaction is done.

Qu Wenruo (3):
  btrfs: trace: Add trace points for unused block groups
  btrfs: Use btrfs_mark_bg_unused() to replace open code
  btrfs: Delayed empty block group auto removal to next transaction

 fs/btrfs/ctree.h             |  2 ++
 fs/btrfs/extent-tree.c       | 62 ++++++++++++++++++++++++++----------
 fs/btrfs/scrub.c             |  8 +----
 fs/btrfs/transaction.c       |  7 ++++
 fs/btrfs/transaction.h       | 10 ++++++
 include/trace/events/btrfs.h | 42 ++++++++++++++++++++++++
 6 files changed, 107 insertions(+), 24 deletions(-)

-- 
2.17.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-05-28 21:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-28  6:58 [PATCH 0/3] btrfs: Delay block group auto removal to avoid interfering qgroups Qu Wenruo
2018-05-28  6:58 ` [PATCH 1/3] btrfs: trace: Add trace points for unused block groups Qu Wenruo
2018-05-28  6:58 ` [PATCH 2/3] btrfs: Use btrfs_mark_bg_unused() to replace open code Qu Wenruo
2018-05-28  6:58 ` [PATCH 3/3] btrfs: Delayed empty block group auto removal to next transaction Qu Wenruo
  -- strict thread matches above, loose matches on Subject: below --
2018-05-28  9:20 [PATCH 0/3] btrfs: Delay block group auto removal to avoid interfering qgroups Qu Wenruo
2018-05-28  9:20 ` [PATCH 2/3] btrfs: Use btrfs_mark_bg_unused() to replace open code Qu Wenruo
2018-05-28 21:45   ` Nikolay Borisov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).