From: fdmanana@kernel.org
To: linux-btrfs@vger.kernel.org
Subject: [PATCH 00/18] btrfs: convert delayed head refs to xarray and cleanups
Date: Thu, 24 Oct 2024 17:24:08 +0100 [thread overview]
Message-ID: <cover.1729784712.git.fdmanana@suse.com> (raw)
From: Filipe Manana <fdmanana@suse.com>
This converts the rb-tree that tracks delayed ref heads into an xarray,
reducing memory used by delayed ref heads and making it more efficient
to add/remove/find delayed ref heads. The rest are mostly cleanups and
refactorings, removing some dead code, deduplicating code, move code
around, etc. More details in the changelogs.
Filipe Manana (18):
btrfs: remove BUG_ON() at btrfs_destroy_delayed_refs()
btrfs: move btrfs_destroy_delayed_refs() to delayed-ref.c
btrfs: remove fs_info parameter from btrfs_destroy_delayed_refs()
btrfs: remove fs_info parameter from btrfs_cleanup_one_transaction()
btrfs: remove duplicated code to drop delayed ref during transaction abort
btrfs: use helper to find first ref head at btrfs_destroy_delayed_refs()
btrfs: remove num_entries atomic counter from delayed ref root
btrfs: change return type of btrfs_delayed_ref_lock() to boolean
btrfs: simplify obtaining a delayed ref head
btrfs: move delayed ref head unselection to delayed-ref.c
btrfs: pass fs_info to functions that search for delayed ref heads
btrfs: pass fs_info to btrfs_cleanup_ref_head_accounting
btrfs: assert delayed refs lock is held at find_ref_head()
btrfs: assert delayed refs lock is held at find_first_ref_head()
btrfs: assert delayed refs lock is held at add_delayed_ref_head()
btrfs: add comments regarding locking to struct btrfs_delayed_ref_root
btrfs: track delayed ref heads in an xarray
btrfs: remove no longer used delayed ref head search functionality
fs/btrfs/backref.c | 3 +-
fs/btrfs/delayed-ref.c | 319 +++++++++++++++++++++++++----------------
fs/btrfs/delayed-ref.h | 61 +++++---
fs/btrfs/disk-io.c | 79 +---------
fs/btrfs/disk-io.h | 3 +-
fs/btrfs/extent-tree.c | 69 ++-------
fs/btrfs/transaction.c | 8 +-
7 files changed, 256 insertions(+), 286 deletions(-)
--
2.43.0
next reply other threads:[~2024-10-24 16:24 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-24 16:24 fdmanana [this message]
2024-10-24 16:24 ` [PATCH 01/18] btrfs: remove BUG_ON() at btrfs_destroy_delayed_refs() fdmanana
2024-10-24 16:24 ` [PATCH 02/18] btrfs: move btrfs_destroy_delayed_refs() to delayed-ref.c fdmanana
2024-10-24 16:24 ` [PATCH 03/18] btrfs: remove fs_info parameter from btrfs_destroy_delayed_refs() fdmanana
2024-10-24 16:24 ` [PATCH 04/18] btrfs: remove fs_info parameter from btrfs_cleanup_one_transaction() fdmanana
2024-10-24 16:24 ` [PATCH 05/18] btrfs: remove duplicated code to drop delayed ref during transaction abort fdmanana
2024-10-24 16:24 ` [PATCH 06/18] btrfs: use helper to find first ref head at btrfs_destroy_delayed_refs() fdmanana
2024-10-24 16:24 ` [PATCH 07/18] btrfs: remove num_entries atomic counter from delayed ref root fdmanana
2024-10-24 16:24 ` [PATCH 08/18] btrfs: change return type of btrfs_delayed_ref_lock() to boolean fdmanana
2024-10-24 16:24 ` [PATCH 09/18] btrfs: simplify obtaining a delayed ref head fdmanana
2024-10-24 16:24 ` [PATCH 10/18] btrfs: move delayed ref head unselection to delayed-ref.c fdmanana
2024-10-24 16:24 ` [PATCH 11/18] btrfs: pass fs_info to functions that search for delayed ref heads fdmanana
2024-10-24 16:24 ` [PATCH 12/18] btrfs: pass fs_info to btrfs_cleanup_ref_head_accounting fdmanana
2024-10-24 16:24 ` [PATCH 13/18] btrfs: assert delayed refs lock is held at find_ref_head() fdmanana
2024-10-24 16:24 ` [PATCH 14/18] btrfs: assert delayed refs lock is held at find_first_ref_head() fdmanana
2024-10-24 16:24 ` [PATCH 15/18] btrfs: assert delayed refs lock is held at add_delayed_ref_head() fdmanana
2024-10-24 16:24 ` [PATCH 16/18] btrfs: add comments regarding locking to struct btrfs_delayed_ref_root fdmanana
2024-10-24 16:24 ` [PATCH 17/18] btrfs: track delayed ref heads in an xarray fdmanana
2024-10-24 18:55 ` Boris Burkov
2024-10-25 10:41 ` Filipe Manana
2024-10-25 18:38 ` David Sterba
2024-10-24 16:24 ` [PATCH 18/18] btrfs: remove no longer used delayed ref head search functionality fdmanana
2024-10-24 18:57 ` [PATCH 00/18] btrfs: convert delayed head refs to xarray and cleanups Boris Burkov
2024-10-25 13:19 ` Johannes Thumshirn
2024-10-25 13:35 ` Filipe Manana
2024-10-25 13:46 ` Johannes Thumshirn
2024-10-25 21:17 ` Qu Wenruo
2024-10-28 11:17 ` Filipe Manana
2024-10-25 18:34 ` David Sterba
2024-10-28 20:55 ` Qu Wenruo
2024-10-29 20:49 ` David Sterba
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1729784712.git.fdmanana@suse.com \
--to=fdmanana@kernel.org \
--cc=linux-btrfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.