From: "Darrick J. Wong" <darrick.wong@oracle.com>
To: darrick.wong@oracle.com
Cc: linux-xfs@vger.kernel.org
Subject: [PATCH v5 00/11] xfs: separate dquot type from flags
Date: Wed, 15 Jul 2020 23:45:19 -0700 [thread overview]
Message-ID: <159488191927.3813063.6443979621452250872.stgit@magnolia> (raw)
Hi all,
This series tries to clean up some of the messier parts of dquot flags
handling. We begin by cleaning up a bunch of dquot flag misuse, so that
now xfs quota functions only take record type information; remove a
bunch of other helper macros that duplicate the "what type is this?"
predicates, and make all the quota type switching logic the same.
We make a fundamental distinction here -- from now on, xfs quota
function only take XFS_DQTYPE_{USER,GROUP,PROJ} as a type parameter.
This means that anything trying to extract the quota record type from an
incore dquot had better use xfs_dquot_type() to extract the type flags.
Right now there's no difference since there are no other type flags, but
this will become important when y2038 timestamps shows up.
Finally, we create a new xfs_dqtype_t to represent all that is an incore
dquot record type, and rename the ondisk d_flags field to d_type to make
the quota type information more self contained.
TLDR: dquot type information is now a separate field, and quota
functions now only take the XFS_DQTYPE flags that signal user, group, or
project quota.
This is an extraordinary way to destroy everything. Enjoy!
Comments and questions are, as always, welcome.
--D
---
fs/xfs/libxfs/xfs_dquot_buf.c | 25 +++++----
fs/xfs/libxfs/xfs_format.h | 13 +++++
fs/xfs/libxfs/xfs_quota_defs.h | 25 +++++----
fs/xfs/scrub/quota.c | 14 +++--
fs/xfs/scrub/repair.c | 10 ++--
fs/xfs/scrub/repair.h | 4 +-
fs/xfs/xfs_buf_item_recover.c | 9 ++-
fs/xfs/xfs_dquot.c | 103 +++++++++++++++++++++------------------
fs/xfs/xfs_dquot.h | 73 ++++++++++++++++++----------
fs/xfs/xfs_dquot_item_recover.c | 12 ++---
fs/xfs/xfs_icache.c | 4 +-
fs/xfs/xfs_iomap.c | 36 +++++++-------
fs/xfs/xfs_qm.c | 79 +++++++++++++++---------------
fs/xfs/xfs_qm.h | 55 +++++++++------------
fs/xfs/xfs_qm_bhv.c | 2 -
fs/xfs/xfs_qm_syscalls.c | 17 ++----
fs/xfs/xfs_quota.h | 10 ++--
fs/xfs/xfs_quotaops.c | 8 ++-
fs/xfs/xfs_trace.h | 21 ++++++--
fs/xfs/xfs_trans_dquot.c | 34 ++++++++-----
20 files changed, 302 insertions(+), 252 deletions(-)
next reply other threads:[~2020-07-16 6:45 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-16 6:45 Darrick J. Wong [this message]
2020-07-16 6:45 ` [PATCH 01/11] xfs: drop the type parameter from xfs_dquot_verify Darrick J. Wong
2020-07-16 23:32 ` Dave Chinner
2020-07-21 14:54 ` Christoph Hellwig
2020-07-16 6:45 ` [PATCH 02/11] xfs: rename XFS_DQ_{USER,GROUP,PROJ} to XFS_DQTYPE_* Darrick J. Wong
2020-07-16 23:36 ` Dave Chinner
2020-07-21 14:54 ` Christoph Hellwig
2020-07-16 6:45 ` [PATCH 03/11] xfs: refactor testing if a particular dquot is being enforced Darrick J. Wong
2020-07-16 23:47 ` Dave Chinner
2020-07-21 14:55 ` Christoph Hellwig
2020-07-16 6:45 ` [PATCH 04/11] xfs: remove the XFS_QM_IS[UGP]DQ macros Darrick J. Wong
2020-07-16 23:49 ` Dave Chinner
2020-07-21 14:55 ` Christoph Hellwig
2020-07-16 6:45 ` [PATCH 05/11] xfs: refactor quota type testing Darrick J. Wong
2020-07-16 23:51 ` Dave Chinner
2020-07-21 14:56 ` Christoph Hellwig
2020-07-16 6:45 ` [PATCH 06/11] xfs: always use xfs_dquot_type when extracting type from a dquot Darrick J. Wong
2020-07-16 23:57 ` Dave Chinner
2020-07-21 14:56 ` Christoph Hellwig
2020-07-16 6:46 ` [PATCH 07/11] xfs: remove unnecessary quota type masking Darrick J. Wong
2020-07-17 0:01 ` Dave Chinner
2020-07-21 14:57 ` Christoph Hellwig
2020-07-16 6:46 ` [PATCH 08/11] xfs: replace a few open-coded XFS_DQTYPE_REC_MASK uses Darrick J. Wong
2020-07-17 0:02 ` Dave Chinner
2020-07-17 1:07 ` Darrick J. Wong
2020-07-17 1:18 ` Dave Chinner
2020-07-21 14:57 ` Christoph Hellwig
2020-07-16 6:46 ` [PATCH 09/11] xfs: create xfs_dqtype_t to represent quota types Darrick J. Wong
2020-07-17 0:08 ` Dave Chinner
2020-07-21 14:58 ` Christoph Hellwig
2020-07-16 6:46 ` [PATCH 10/11] xfs: improve ondisk dquot flags checking Darrick J. Wong
2020-07-17 0:13 ` Dave Chinner
2020-07-17 1:05 ` Darrick J. Wong
2020-07-17 1:11 ` Dave Chinner
2020-07-17 1:12 ` [PATCH v2 " Darrick J. Wong
2020-07-17 1:18 ` Dave Chinner
2020-07-21 14:58 ` Christoph Hellwig
2020-07-16 6:46 ` [PATCH 11/11] xfs: rename the ondisk dquot d_flags to d_type Darrick J. Wong
2020-07-17 0:15 ` Dave Chinner
2020-07-21 14:59 ` Christoph Hellwig
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=159488191927.3813063.6443979621452250872.stgit@magnolia \
--to=darrick.wong@oracle.com \
--cc=linux-xfs@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 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).