Thread (17 messages) 17 messages, 4 authors, 2021-01-30

Re: [PATCH 2/3] nfsd: move change attribute generation to filesystem

From: J. Bruce Fields <hidden>
Date: 2021-01-21 20:35:04
Also in: linux-fsdevel

On Wed, Jan 20, 2021 at 08:46:38AM +0000, Christoph Hellwig wrote:
On Tue, Jan 19, 2021 at 02:24:56PM -0500, J. Bruce Fields wrote:
quoted
From: "J. Bruce Fields" <redacted>

After this, only filesystems lacking change attribute support will leave
the fetch_iversion export op NULL.

This seems cleaner to me, and will allow some minor optimizations in the
nfsd code.
Another indirect call just to fetch the change attribute (which happens
a lot IIRC) does not seem very optimal to me.
In the next patch we're removing an fh_getattr (vfs_getattr) in the case
we call the new op, so that's typically a net decrease in indirect
calls.

Though maybe we could use a flag here and do without either.
And the fact that we need three duplicate implementations also is not
very nice.
Ext4 and xfs are identical, btrfs is a little different since it doesn't
consult I_VERSION.  (And then there's nfs, which uses the origin
server's i_version if it can.)

I also have a vague idea that some filesystem-specific improvements
might be possible.  (E.g., if a filesystem had some kind of boot count
in the superblock, maybe that would be a better way to prevent the
change attribute from going backwards on reboot than the thing
generic_fetch_iversion is currently doing with ctime.  But I have no
concrete plan there, maybe I'm dreaming.)

--b.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help