linux/fs/nfsd
Linus Torvalds b7d74ea0fd vfs-7.1-rc1.kino
Please consider pulling these changes from the signed vfs-7.1-rc1.kino tag.
 
 Thanks!
 Christian
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRAhzRXHqcMeLMyaSiRxhvAZXjcogUCadjZCgAKCRCRxhvAZXjc
 otmnAP4sbsxZQdz2TG2hJuOwnEZOkkxZQOUMc3ERVyZaWXIeTAEA7e5M+8FpoG9n
 8ipO76UoaXdGLESrqVdp9EOhLqOW7QY=
 =uMeJ
 -----END PGP SIGNATURE-----

Merge tag 'vfs-7.1-rc1.kino' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs

Pull vfs i_ino updates from Christian Brauner:
 "For historical reasons, the inode->i_ino field is an unsigned long,
  which means that it's 32 bits on 32 bit architectures. This has caused
  a number of filesystems to implement hacks to hash a 64-bit identifier
  into a 32-bit field, and deprives us of a universal identifier field
  for an inode.

  This changes the inode->i_ino field from an unsigned long to a u64.
  This shouldn't make any material difference on 64-bit hosts, but
  32-bit hosts will see struct inode grow by at least 4 bytes. This
  could have effects on slabcache sizes and field alignment.

  The bulk of the changes are to format strings and tracepoints, since
  the kernel itself doesn't care that much about the i_ino field. The
  first patch changes some vfs function arguments, so check that one out
  carefully.

  With this change, we may be able to shrink some inode structures. For
  instance, struct nfs_inode has a fileid field that holds the 64-bit
  inode number. With this set of changes, that field could be
  eliminated. I'd rather leave that sort of cleanups for later just to
  keep this simple"

* tag 'vfs-7.1-rc1.kino' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
  nilfs2: fix 64-bit division operations in nilfs_bmap_find_target_in_group()
  EVM: add comment describing why ino field is still unsigned long
  vfs: remove externs from fs.h on functions modified by i_ino widening
  treewide: fix missed i_ino format specifier conversions
  ext4: fix signed format specifier in ext4_load_inode trace event
  treewide: change inode->i_ino from unsigned long to u64
  nilfs2: widen trace event i_ino fields to u64
  f2fs: widen trace event i_ino fields to u64
  ext4: widen trace event i_ino fields to u64
  zonefs: widen trace event i_ino fields to u64
  hugetlbfs: widen trace event i_ino fields to u64
  ext2: widen trace event i_ino fields to u64
  cachefiles: widen trace event i_ino fields to u64
  vfs: widen trace event i_ino fields to u64
  net: change sock.sk_ino and sock_i_ino() to u64
  audit: widen ino fields to u64
  vfs: widen inode hash/lookup functions to u64
2026-04-13 12:19:01 -07:00
..
acl.h NFSD: Add support for XDR decoding POSIX draft ACLs 2026-01-29 09:48:33 -05:00
auth.c nfsd: avoid pointless cred reference count bump 2024-12-02 11:25:14 +01:00
auth.h nfsd: Pass 'cred' instead of 'rqstp' to some functions. 2024-09-20 19:31:03 -04:00
blocklayout.c Convert 'alloc_flex' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
blocklayoutxdr.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
blocklayoutxdr.h NFSD/blocklayout: Introduce layout content structure 2025-11-16 18:20:11 -05:00
cache.h nfsd: don't allocate the versions array. 2024-09-20 19:29:23 -04:00
current_stateid.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
debugfs.c NFSD: Implement NFSD_IO_DIRECT for NFS WRITE 2025-12-01 09:57:10 -05:00
export.c vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
export.h NFSD: Defer sub-object cleanup in export put callbacks 2026-03-14 11:34:25 -04:00
filecache.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
filecache.h nfsd: allow filecache to hold S_IFDIR files 2025-11-12 09:38:36 +01:00
flexfilelayout.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
flexfilelayoutxdr.c NFSD: Rework encoding and decoding of nfsd4_deviceid 2025-09-21 19:24:50 -04:00
flexfilelayoutxdr.h NFSD: Make @gdev parameter of ->encode_getdeviceinfo a const pointer 2023-10-16 12:44:29 -04:00
idmap.h
Kconfig NFSD: Add a Kconfig setting to enable support for NFSv4 POSIX ACLs 2026-01-29 09:48:33 -05:00
localio.c NFSD 6.18 Release Notes 2025-10-06 13:22:21 -07:00
lockd.c nfsd: discard nfserr_dropit 2025-10-01 15:54:01 -04:00
Makefile NFSD: Add instructions on how to deal with xdrgen files 2026-01-26 10:10:58 -05:00
netlink.c nfsd: add controls to set the minimum number of threads per pool 2026-01-28 10:15:42 -05:00
netlink.h tools: ynl-gen: add regeneration comment 2025-11-25 19:20:42 -08:00
netns.h nfsd: add controls to set the minimum number of threads per pool 2026-01-28 10:15:42 -05:00
nfs2acl.c NFS: NFSERR_INVAL is not defined by NFSv2 2026-01-26 10:10:58 -05:00
nfs3acl.c nfsd: clear acl_access/acl_default after releasing them 2025-02-02 11:31:45 -05:00
nfs3proc.c vfs-6.19-rc1.directory.locking 2025-12-01 16:13:46 -08:00
nfs3xdr.c nfsd: Use lookup_one() rather than lookup_one_len() 2025-04-07 09:25:32 +02:00
nfs4acl.c NFSD: Add support for XDR decoding POSIX draft ACLs 2026-01-29 09:48:33 -05:00
nfs4callback.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
nfs4idmap.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
nfs4layouts.c filelock: allow lease_managers to dictate what qualifies as a conflict 2025-12-15 15:20:33 +01:00
nfs4proc.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
nfs4recover.c nfsd: switch purge_old() to use start_removing_noperm() 2026-03-06 10:24:12 +01:00
nfs4state.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
nfs4xdr_gen.c Add RPC language definition of NFSv4 POSIX ACL extension 2026-01-29 09:48:33 -05:00
nfs4xdr_gen.h Add RPC language definition of NFSv4 POSIX ACL extension 2026-01-29 09:48:33 -05:00
nfs4xdr.c nfsd-7.0 fixes: 2026-03-18 14:27:11 -07:00
nfscache.c NFSD: Reduce DRC bucket size 2025-09-21 19:24:50 -04:00
nfsctl.c nfsd-7.0 fixes: 2026-03-18 14:27:11 -07:00
nfsd.h NFSD: Add POSIX ACL file attributes to SUPPATTR bitmasks 2026-01-29 09:48:33 -05:00
nfsfh.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
nfsfh.h NFSD: Move the fh_getattr() helper 2025-09-21 19:24:50 -04:00
nfsproc.c NFS: NFSERR_INVAL is not defined by NFSv2 2026-01-26 10:10:58 -05:00
nfssvc.c nfsd: report the requested maximum number of threads instead of number running 2026-02-24 10:27:51 -05:00
nfsxdr.c NFSD: Remove NFSSVC_MAXBLKSIZE_V2 macro 2025-05-15 16:16:28 -04:00
pnfs.h NFSD: Do the grace period check in ->proc_layoutget 2025-10-01 15:54:01 -04:00
state.h nfsd: fix heap overflow in NFSv4.0 LOCK replay cache 2026-03-16 16:58:01 -04:00
stats.c nfsd: don't ignore the return code of svc_proc_register() 2025-03-10 09:10:59 -04:00
stats.h nfsd: don't ignore the return code of svc_proc_register() 2025-03-10 09:10:59 -04:00
trace.c NFSD: Add SPDX header for fs/nfsd/trace.c 2020-11-30 13:00:24 -05:00
trace.h nfsd: add controls to set the minimum number of threads per pool 2026-01-28 10:15:42 -05:00
vfs.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
vfs.h NFSD: Refactor nfsd_setattr()'s ACL error reporting 2026-01-29 09:48:33 -05:00
xdr.h NFSD: prevent underflow in nfssvc_decode_writeargs() 2022-03-15 09:35:56 -04:00
xdr3.h nfsd: Fix NFSv3 atomicity bugs in nfsd_setattr() 2024-03-01 09:12:33 -05:00
xdr4.h NFSD: Add support for XDR decoding POSIX draft ACLs 2026-01-29 09:48:33 -05:00
xdr4cb.h NFSD: Implement CB_SEQUENCE referring call lists 2025-05-11 19:48:20 -04:00