Re: [RHEL5 PATCH 2/4] VFS: Make inode numbers 64-bits

From: Al Viro
Date: Mon Aug 14 2006 - 21:28:47 EST

On Mon, Aug 14, 2006 at 10:15:09PM +0100, David Howells wrote:
> Make the in-kernel representations of inode number 64-bit in size at a minimum
> as some network filesystems (eg: NFS) and local filesystems (eg: XFS) provide
> such.
> The 64-bit inode number will be returned through stat64() and getdents64() on
> archs that are currently set up to do so.
> This patch changes __kernel_ino_t to be "unsigned long long" on all archs, but
> changes usages of that in struct stat to be the old type so that the userspace
> interface does not change. The 64-bit division patch is required to get this
> to link on some archs.
> struct inode::i_ino and struct kstat::ino have been converted to ino_t.
> Neither needs moving within the bounds of its parent structure to make sure
> that they reside on a 64-bit boundary if the structure itself does so.

NAK. There's no need to touch i_ino and a lot of reasons for not doing
that. ->getattr() can fill 64bit field just fine without that and there's
zero need to touch every fs out there *and* add cycles on icache lookups.
WTF for?

Filesystems that want 64bit values in st_ino are welcome to
* set it in ->getattr() and
* use iget5()

Less PITA for everyone and less intrusive patch that way.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at