On Dec 14, 2006 11:03 -0500, Theodore Tso wrote:
There was discussion on yesterday's call about whether or not 32-bit
was enough for NFSv4, or whether it also requried 64-bits of change
notification in the RFC's. So one of the questions is whether this is
something that would justify requiring 64-bits --- and if so, maybe we
need to require that big inodes be used and store the entire 64-bit
value beyond 128 bytes. This would mean that NFSv4 cache management
couldn't be fully implemented without big inodes, or we'd have to make
do by using the inode ctime as a partial substitute.
Per Trond and Bruce Field's reply to my email it seems that NFSv4 only
needs the version to compare for inequality. If the change numbers are
sequential for a given inode it can OPTIONALLY extract additional
information about the server (i.e. it still has an up-to-date cache
because it was the only one that did an update on a given file).
So, I think for basic NFSv4 setups that 2^32 is sufficient (per Bull's
original patch) but 2^64 is desirable to avoid collisions and allow the
sequential updates logic to work properly for long-lived files.
So, I think a 32-bit field in the small inode, and an additional 32-bit
field in the large inode would be perfect. It allows this functionality
to work with existing ext3 filesystems, if not quite optimally.
In addition, for Lustre, could we get a 64-bit field in the superblock
which contains the fs-wide version number.
I'm proposing that, per the original Bull patch, l_i_reserved1 be changed
to be i_version for linux, and we add i_version_hi after cr_time_extra in
the large inode. The disk i_version would be stored in the vfs_inode
i_version (which is already used for this same purpose). It would be good
for NFSv4 if the i_version field could be expanded to 64 bits to avoid
the need for it to have fs-specific operations, but failing that we can
put the high word into ext4_inode_info and NFS can access it via
export_operations I think.
Cheers, Andreas
--
Andreas Dilger
Principal Software Engineer
Cluster File Systems, Inc.
-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html