All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] btrfs: rework directory logging to make it more efficient
@ 2021-09-16 10:32 fdmanana
  2021-09-16 10:32 ` [PATCH 1/5] btrfs: remove root argument from btrfs_log_inode() and its callees fdmanana
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: fdmanana @ 2021-09-16 10:32 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>


This patchset changes directory logging to make it more efficient, by doing
bulk inserts of directory items and avoiding tree searches on a item by item
basis when they can be avoided. These decrease the amount of time we spend
logging directory items and reduces lock contention on a log tree in case
there are other tasks logging other inodes. The last patch mentions test
results in its changelog, and the first 3 patches are just cleanups and
preparatory work. This is also ground work for future changes to directory
logging, but since these are already big enough, I'm sending these separately
to get into integration/linux-next sooner rather than later.


Filipe Manana (5):
  btrfs: remove root argument from btrfs_log_inode() and its callees
  btrfs: remove redundant log root assignment from log_dir_items()
  btrfs: factor out the copying loop of dir items from log_dir_items()
  btrfs: insert items in batches when logging a directory when possible
  btrfs: keep track of the last logged keys when logging a directory

 fs/btrfs/btrfs_inode.h |  39 ++--
 fs/btrfs/inode.c       |   6 +-
 fs/btrfs/tree-log.c    | 419 ++++++++++++++++++++++++++++++-----------
 fs/btrfs/tree-log.h    |   2 +
 4 files changed, 340 insertions(+), 126 deletions(-)

-- 
2.33.0


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

end of thread, other threads:[~2021-09-17 11:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-16 10:32 [PATCH 0/5] btrfs: rework directory logging to make it more efficient fdmanana
2021-09-16 10:32 ` [PATCH 1/5] btrfs: remove root argument from btrfs_log_inode() and its callees fdmanana
2021-09-17 10:51   ` David Sterba
2021-09-17 11:09     ` Filipe Manana
2021-09-17 11:34       ` David Sterba
2021-09-16 10:32 ` [PATCH 2/5] btrfs: remove redundant log root assignment from log_dir_items() fdmanana
2021-09-16 10:32 ` [PATCH 3/5] btrfs: factor out the copying loop of dir items " fdmanana
2021-09-16 10:32 ` [PATCH 4/5] btrfs: insert items in batches when logging a directory when possible fdmanana
2021-09-16 10:32 ` [PATCH 5/5] btrfs: keep track of the last logged keys when logging a directory fdmanana
2021-09-17 10:46 ` [PATCH 0/5] btrfs: rework directory logging to make it more efficient David Sterba

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.