All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nikolay Borisov <nborisov@suse.com>
To: linux-btrfs@vger.kernel.org
Cc: Nikolay Borisov <nborisov@suse.com>
Subject: [PATCH 0/5] Make real_root used only in ref-verify
Date: Mon, 11 Oct 2021 13:10:14 +0300	[thread overview]
Message-ID: <20211011101019.1409855-1-nborisov@suse.com> (raw)

Here's a small series that refactors the way btrfs_ref::real_root and
btrfs_ref::skip_qgroup are used. Currently the former is used in ref-verify but
also in order to perform the is_fstree() check on it in delayed-ref core. Given
the complexity and amount of information that the delayed ref machinery hauls
around it becomes really non-evident that delrefs really don't care about
real_root itself but rather only if qgroup processing should happen or not.

Instead of having the check burried in the core this series changes the data
flow in such a way that real_root will only be used for ref-verify's operation
and 'skip_qgroup' will contains the final condition of whether qgroup processing
should take place for a given delref.


Nikolay Borisov (5):
  btrfs: Rename root fields in delayed refs structs
  btrfs: Rely on owning_root field in btrfs_add_delayed_tree_ref to
    detect CHUNK_ROOT
  btrfs: Add additional parameters to
    btrfs_init_tree_ref/btrfs_init_data_ref
  btrfs: pull up qgroup checks from delayed-ref core to init time
  btrfs: make real_root optional

 fs/btrfs/delayed-ref.c | 19 +++++++++---------
 fs/btrfs/delayed-ref.h | 44 +++++++++++++++++++++---------------------
 fs/btrfs/extent-tree.c | 32 +++++++++++++++---------------
 fs/btrfs/file.c        | 13 ++++++++-----
 fs/btrfs/inode.c       |  4 ++--
 fs/btrfs/ref-verify.c  |  4 ++--
 fs/btrfs/relocation.c  | 28 +++++++++++++--------------
 fs/btrfs/tree-log.c    |  2 +-
 8 files changed, 74 insertions(+), 72 deletions(-)

--
2.25.1


             reply	other threads:[~2021-10-11 10:10 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-11 10:10 Nikolay Borisov [this message]
2021-10-11 10:10 ` [PATCH 1/5] btrfs: Rename root fields in delayed refs structs Nikolay Borisov
2021-10-11 15:00   ` David Sterba
2021-10-11 10:10 ` [PATCH 2/5] btrfs: Rely on owning_root field in btrfs_add_delayed_tree_ref to detect CHUNK_ROOT Nikolay Borisov
2021-10-11 10:10 ` [PATCH 3/5] btrfs: Add additional parameters to btrfs_init_tree_ref/btrfs_init_data_ref Nikolay Borisov
2021-10-11 10:10 ` [PATCH 4/5] btrfs: pull up qgroup checks from delayed-ref core to init time Nikolay Borisov
2021-10-11 15:05   ` David Sterba
2021-10-11 10:10 ` [PATCH 5/5] btrfs: make real_root optional Nikolay Borisov
2021-10-11 15:05   ` David Sterba
2021-10-11 15:09     ` Nikolay Borisov
2021-10-11 15:08 ` [PATCH 0/5] Make real_root used only in ref-verify 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=20211011101019.1409855-1-nborisov@suse.com \
    --to=nborisov@suse.com \
    --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.