From: Dave Chinner <david@fromorbit.com>
To: "Darrick J. Wong" <djwong@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>,
Linus Torvalds <torvalds@linux-foundation.org>,
Chandan Babu R <chandanbabu@kernel.org>,
Jeff Layton <jlayton@kernel.org>,
Christian Brauner <brauner@kernel.org>,
catherine.hoang@oracle.com, cheng.lin130@zte.com.cn,
dchinner@redhat.com, linux-fsdevel@vger.kernel.org,
linux-xfs@vger.kernel.org, osandov@fb.com
Subject: Re: [GIT PULL] xfs: new code for 6.7
Date: Fri, 10 Nov 2023 09:05:48 +1100 [thread overview]
Message-ID: <ZU1XvBwugPhhQ93S@dread.disaster.area> (raw)
In-Reply-To: <20231109073945.GE1205143@frogsfrogsfrogs>
On Wed, Nov 08, 2023 at 11:39:45PM -0800, Darrick J. Wong wrote:
> On Thu, Nov 09, 2023 at 05:51:50AM +0100, Christoph Hellwig wrote:
> > On Wed, Nov 08, 2023 at 02:52:00PM -0800, Darrick J. Wong wrote:
> > > > Also, xfs people may obviously have other preferences for how to deal
> > > > with the whole "now using tv_sec in the VFS inode as a 64-bit sequence
> > > > number" thing, and maybe you prefer to then update my fix to this all.
> > > > But that horrid casts certainly wasn't the right way to do it.
> > >
> > > Yeah, I can work on that for the rt modernization patchset.
> >
> > As someone who has just written some new code stealing this trick I
> > actually have a todo list item to make this less horrible as the cast
> > upset my stomache. But shame on me for not actually noticing that it
> > is buggy as well (which honestly should be the standard assumption for
> > casts like this).
>
> Dave and I started looking at this too, and came up with: For rtgroups
> filesystems, what if rtpick simply rotored the rtgroups? And what if we
> didn't bother persisting the rotor value, which would make this casting
> nightmare go away in the long run. It's not like we persist the agi
> rotors.
I think we could replace it right now with an in-memory rotor like
the mp->m_agfrotor. It really does not need to be persistent; the
current sequence based algorithm devolves to sequential ascending
block order allocation targets once the sequence number gets large
enough.
Further, the (somewhat) deterministic extent distribution it is
trying to acheive (i.e. even distribution across the rt dev) is
really only acheivable in write-once workloads. The moment we start
freeing space on the rtdev, the free space is no longer uniform and
does not match the pattern the sequence-based target iterates. Hence
the layout the search target attempts to create is unacheivable and
largely meaningless.
IOWs, we may as well just use an in-memory sequence number or a
random number to seed the allocation target; they will work just as
well as what we have right now without the need for persistent
sequence numbers.
Also, I think that not updating the persistent sequence number is
fine from a backwards compatibility perspective - older kernels will
just use it as it does now and newer kernels will just ignore it...
I say we just kill the whole sequence number in atime thing
completely....
-Dave.
--
Dave Chinner
david@fromorbit.com
next prev parent reply other threads:[~2023-11-09 22:05 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-08 9:56 [GIT PULL] xfs: new code for 6.7 Chandan Babu R
2023-11-08 21:29 ` Linus Torvalds
2023-11-08 22:52 ` Darrick J. Wong
2023-11-09 4:51 ` Christoph Hellwig
2023-11-09 7:39 ` Darrick J. Wong
2023-11-09 14:46 ` Christoph Hellwig
2023-11-09 16:38 ` Darrick J. Wong
2023-11-09 16:50 ` Christoph Hellwig
2023-11-09 22:05 ` Dave Chinner [this message]
2023-11-09 17:12 ` Jeff Layton
2023-11-08 21:34 ` pr-tracker-bot
-- strict thread matches above, loose matches on Subject: below --
2023-11-25 12:47 Chandan Babu R
2023-11-25 17:13 ` pr-tracker-bot
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=ZU1XvBwugPhhQ93S@dread.disaster.area \
--to=david@fromorbit.com \
--cc=brauner@kernel.org \
--cc=catherine.hoang@oracle.com \
--cc=chandanbabu@kernel.org \
--cc=cheng.lin130@zte.com.cn \
--cc=dchinner@redhat.com \
--cc=djwong@kernel.org \
--cc=hch@lst.de \
--cc=jlayton@kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=osandov@fb.com \
--cc=torvalds@linux-foundation.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