FreeBSD: Add setting of the VFCF_FILEREV flag

The flag VFCF_FILEREV was recently defined in FreeBSD
so that a file system could indicate that it increments
va_filerev by one for each change.

Since ZFS does do this, set the flag if defined for the
kernel being built.  This allows the NFSv4.2 server to
reply with the correct change_attr_type attribute value.

Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Rick Macklem <rmacklem@uoguelph.ca>
Closed #16976
This commit is contained in:
rmacklem 2025-01-22 16:33:43 -08:00 committed by Ameer Hamza
parent a28f5a94f4
commit 42bad93414

View File

@ -144,12 +144,14 @@ struct vfsops zfs_vfsops = {
.vfs_quotactl = zfs_quotactl,
};
VFS_SET(zfs_vfsops, zfs, VFCF_DELEGADMIN | VFCF_JAIL
#ifdef VFCF_CROSS_COPY_FILE_RANGE
VFS_SET(zfs_vfsops, zfs,
VFCF_DELEGADMIN | VFCF_JAIL | VFCF_CROSS_COPY_FILE_RANGE);
#else
VFS_SET(zfs_vfsops, zfs, VFCF_DELEGADMIN | VFCF_JAIL);
| VFCF_CROSS_COPY_FILE_RANGE
#endif
#ifdef VFCF_FILEREVINC
| VFCF_FILEREVINC
#endif
);
/*
* We need to keep a count of active fs's.