[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20241016005201.GH21836@frogsfrogsfrogs>
Date: Tue, 15 Oct 2024 17:52:01 -0700
From: "Darrick J. Wong" <djwong@...nel.org>
To: John Garry <john.g.garry@...cle.com>
Cc: Christoph Hellwig <hch@....de>, axboe@...nel.dk, brauner@...nel.org,
viro@...iv.linux.org.uk, jack@...e.cz, dchinner@...hat.com,
cem@...nel.org, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-xfs@...r.kernel.org,
linux-fsdevel@...r.kernel.org, hare@...e.de,
martin.petersen@...cle.com, catherine.hoang@...cle.com,
mcgrof@...nel.org, ritesh.list@...il.com, ojaswin@...ux.ibm.com
Subject: Re: [PATCH v7 5/8] xfs: Support FS_XFLAG_ATOMICWRITES
On Sun, Oct 13, 2024 at 10:06:04PM +0100, John Garry wrote:
> On 07/10/2024 06:42, Christoph Hellwig wrote:
> > On Fri, Oct 04, 2024 at 02:07:05PM +0100, John Garry wrote:
> > > Sure, that is true (about being able to atomically write 1x FS block if the
> > > bdev support it).
> > >
> > > But if we are going to add forcealign or similar later, then it would make
> > > sense (to me) to have FS_XFLAG_ATOMICWRITES (and its other flags) from the
> > > beginning. I mean, for example, if FS_XFLAG_FORCEALIGN were enabled and we
> > > want atomic writes, setting FS_XFLAG_ATOMICWRITES would be rejected if AG
> > > count is not aligned with extsize, or extsize is not a power-of-2, or
> > > extsize exceeds bdev limits. So FS_XFLAG_ATOMICWRITES could have some value
> > > there.
> > >
> > > As such, it makes sense to have a consistent user experience and require
> > > FS_XFLAG_ATOMICWRITES from the beginning.
> >
> > Well, even with forcealign we're not going to lose support for atomic
> > writes <= block size, are we?
> >
>
> forcealign would not be required for atomic writes <= FS block size.
>
> How about this modified approach:
>
> a. Drop FS_XFLAG_ATOMICWRITES support from this series, and so we can always
> atomic write 1x FS block (if the bdev supports it)
>
> b. If we agree to support forcealign afterwards, then we can introduce 2x
> new flags:
> - FS_XFLAG_FORCEALIGN - as before
> - FS_XFLAG_BIG_ATOMICWRITES - this depends on FS_XFLAG_FORCEALIGN being
> enabled per inode, and allows us to atomically write > 1 FS block
>
> c. Later support writing < 1 FS block
> - this would not depend on forcealign
> - would require a real user, and I don't know one yet
>
> better?
Sounds fine to /me/, but that's just my opinion. :)
--D
Powered by blists - more mailing lists