[PATCH 3/3] Add a pair of system calls to make extended file stats available [ver #2]

Andreas Dilger adilger at dilger.ca
Wed Jun 30 03:45:59 MDT 2010

On 2010-06-29, at 19:17, David Howells wrote:
> int ext4_getattr(struct vfsmount *mnt, struct dentry *dentry,
> 		 struct kstat *stat)
> {
> +	if (S_ISDIR(inode->i_mode)) {
> +		stat->result_flags |= XSTAT_QUERY_DATA_VERSION;
> +		stat->data_version = inode->i_version;
> +	}

Note that when ext4 is mounted with the "i_version" option that the i_version field is also updated on regular files, for use by NFSv4.  See, for example, ext4_mark_iloc_dirty().

I had a hard time finding this, even though I knew it was there somewhere, because it isn't modifying "i_version" directly, but rather calling a helper function inode_inc_iversion().

It probably makes sense to always return i_version, unless it is 0.

Cheers, Andreas

More information about the samba-technical mailing list