FreeBSD: Provide correct file generation number
va_seq was actually a thin veil over va_gen, so z_gen is a more appropriate value than z_seq to populate the field with. Drop the unnecessary compat obfuscation and provide the correct file generation number. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Alexander Motin <mav@FreeBSD.org> Signed-off-by: Ryan Moeller <freqlabs@freebsd.org> Closes #12851
This commit is contained in:
parent
af88d47f1e
commit
913ae45218
|
@ -132,7 +132,6 @@ vn_flush_cached_data(vnode_t *vp, boolean_t sync)
|
|||
/* TODO: This field needs conversion! */
|
||||
#define va_nblocks va_bytes
|
||||
#define va_blksize va_blocksize
|
||||
#define va_seq va_gen
|
||||
|
||||
#define MAXOFFSET_T OFF_MAX
|
||||
#define EXCL 0
|
||||
|
|
|
@ -496,7 +496,7 @@ zfsctl_common_getattr(vnode_t *vp, vattr_t *vap)
|
|||
*/
|
||||
vap->va_blksize = 0;
|
||||
vap->va_nblocks = 0;
|
||||
vap->va_seq = 0;
|
||||
vap->va_gen = 0;
|
||||
vn_fsid(vp, vap);
|
||||
vap->va_mode = zfsctl_ctldir_mode;
|
||||
vap->va_type = VDIR;
|
||||
|
|
|
@ -2065,7 +2065,7 @@ zfs_getattr(vnode_t *vp, vattr_t *vap, int flags, cred_t *cr)
|
|||
vap->va_size = zp->z_size;
|
||||
if (vp->v_type == VBLK || vp->v_type == VCHR)
|
||||
vap->va_rdev = zfs_cmpldev(rdev);
|
||||
vap->va_seq = zp->z_seq;
|
||||
vap->va_gen = zp->z_gen;
|
||||
vap->va_flags = 0; /* FreeBSD: Reset chflags(2) flags. */
|
||||
vap->va_filerev = zp->z_seq;
|
||||
|
||||
|
|
Loading…
Reference in New Issue