diff options
author | araujo <araujo@FreeBSD.org> | 2014-10-07 06:00:09 +0000 |
---|---|---|
committer | araujo <araujo@FreeBSD.org> | 2014-10-07 06:00:09 +0000 |
commit | 6b6a0e5b05ab1414054afc77562682367d8856fc (patch) | |
tree | 4a2c4abb07dc519bcd23558b0e5e465c4bb8304d /sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c | |
parent | f906790c8793e71f5e1868214912b1a0035a5185 (diff) | |
download | FreeBSD-src-6b6a0e5b05ab1414054afc77562682367d8856fc.zip FreeBSD-src-6b6a0e5b05ab1414054afc77562682367d8856fc.tar.gz |
Make external NFS clients know when files have their attributes changed and
avoid cache the file's state indefinitely. The va_filerev is what is sent
to the client as the "change" attribute, the client is periodically fetching
the attributes and without this option the attribute remains as some garbage
value.
Phabric: D905
Reported by: Kevin Buhr <buhr@asaurus.net>
Reviewed by: rmacklem, delphij
Approved by: delphij
Obtained from: r272467
Sponsored by: QNAP Systems Inc.
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c index 689a4a4..4e57016 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c @@ -2827,6 +2827,7 @@ zfs_getattr(vnode_t *vp, vattr_t *vap, int flags, cred_t *cr, #endif vap->va_seq = zp->z_seq; vap->va_flags = 0; /* FreeBSD: Reset chflags(2) flags. */ + vap->va_filerev = zp->z_seq; /* * Add in any requested optional attributes and the create time. |