mbox series

[v4,0/6] vfs: clean up i_version behavior and expose it via statx

Message ID 20220907113318.21810-1-jlayton@kernel.org
Headers show
Series vfs: clean up i_version behavior and expose it via statx | expand

Message

Jeff Layton Sept. 7, 2022, 11:33 a.m. UTC
v4: drop xfs patch
    revise comment update patch with latest proposed semantics

This is a small revision to the patchset I sent a little over a week
ago [1]. Since then, this has also garnered a LWN article [2], so I
won't go into great detail on the basic premise and rationale.

The biggest change here is that I've dropped the xfs patch. Dave Chinner
stated that they'd need to add a new on-disk field instead of modifying
the behavior of the existing di_changecount field [3]. I'll leave that
to the xfs devs, but this does mean that xfs will have "buggy" behavior
until that's done.

I've also sent a revised manpage patchset separately to make sure that
the semantics are acceptable [4]. That hasn't gotten a lot of comments,
so I'm operating under the assumption that the semantics proposed there
are acceptable to most.

[1]: https://lore.kernel.org/linux-nfs/20220826214703.134870-1-jlayton@kernel.org/
[2]: https://lwn.net/Articles/905931/
[3]: https://lore.kernel.org/linux-nfs/20220830000851.GV3600936@dread.disaster.area/
[4]: https://lore.kernel.org/linux-nfs/20220907111606.18831-1-jlayton@kernel.org/T/#u

Jeff Layton (6):
  iversion: update comments with info about atime updates
  ext4: fix i_version handling in ext4
  ext4: unconditionally enable the i_version counter
  vfs: report an inode version in statx for IS_I_VERSION inodes
  nfs: report the inode version in statx if requested
  ceph: fill in the change attribute in statx requests

 fs/ceph/inode.c           | 14 +++++++++-----
 fs/ext4/inode.c           | 15 +++++----------
 fs/ext4/ioctl.c           |  4 ++++
 fs/ext4/move_extent.c     |  6 ++++++
 fs/ext4/super.c           | 13 ++++---------
 fs/ext4/xattr.c           |  1 +
 fs/nfs/inode.c            |  7 +++++--
 fs/stat.c                 |  7 +++++++
 include/linux/iversion.h  | 10 ++++++++--
 include/linux/stat.h      |  1 +
 include/uapi/linux/stat.h |  3 ++-
 samples/vfs/test-statx.c  |  8 ++++++--
 12 files changed, 58 insertions(+), 31 deletions(-)