From: Christoph Hellwig <hch@lst.de>
To: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: Christoph Hellwig <hch@infradead.org>,
Christoph Hellwig <hch@lst.de>,
linux-xfs@vger.kernel.org
Subject: Re: [PATCH] xfs: remove the di_version field from struct icdinode
Date: Wed, 19 Feb 2020 19:43:02 +0100 [thread overview]
Message-ID: <20200219184302.GA22307@lst.de> (raw)
In-Reply-To: <20200219001852.GA9506@magnolia>
On Tue, Feb 18, 2020 at 04:18:52PM -0800, Darrick J. Wong wrote:
> IIRC I started reading this last month, and tried to picture what will
> happen when we introduce a v4 inode format -- will we have to revert all
> of the tests that went from "is di_version == 3" to "if hascrc" in this
> patch? Or will we simply be adding more code, e.g.
>
> if (hascrc(...)) {
> /* do v3 stuff */
> }
>
> if (di_version == 4) {
> /* do v4 stuff */
> }
>
> I think the answer is that the code for a v4 inode format would probably
> end up doing that and it's probably ok...
Depends on what a v4 inode format would really be. v1 vs v2 was
basically a few new fields, and more importantl increasing them and
intended to be migrated on an as-needed basis without a reformat.
In reality we would not really need a version number for anything
but the larger fields, as new fields can just be added without
new versions (and we've done that, and in fact done larger fields
that way to by splitting them in case of the project id).
v3 is different in that it treats things different in logging, but
more importantly they require a reformat and thus are file system
wide.
prev parent reply other threads:[~2020-02-19 18:43 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-16 10:46 [PATCH] xfs: remove the di_version field from struct icdinode Christoph Hellwig
2020-02-18 21:06 ` Christoph Hellwig
2020-02-19 0:18 ` Darrick J. Wong
2020-02-19 14:52 ` Brian Foster
2020-02-19 18:45 ` Christoph Hellwig
2020-02-19 19:21 ` Brian Foster
2020-02-19 21:47 ` Darrick J. Wong
2020-02-19 18:43 ` Christoph Hellwig [this message]
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=20200219184302.GA22307@lst.de \
--to=hch@lst.de \
--cc=darrick.wong@oracle.com \
--cc=hch@infradead.org \
--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).