mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
fs: Add new VFCF_xxx flags for va_filerev
Richard Kojedzinszky <richard@kojedz.in> reported a problem via email, where the Linux NFSv4.2 client did not detect a change in a directory on a FreeBSD NFSv4.2 server. Adding support for the NFSv4.2 change_attr_type attribute seems to have fixed the problem. This requires that the server file system indicate if it increments va_filerev by one, since that file attribute is used for the NFSv4.2 change attribute. Fuse requires an indication that va_filerev is based on ctime. This patch adds VFCF_FILEREVINC and VFCF_FILEREVCT to indicate this. A future patch to the NFS server will use these flags. (cherry picked from commit 1cd455f39d886f27c33f7726f79fc4cc566da7b3)
This commit is contained in:
parent
93836ff92b
commit
7773d509d8
2 changed files with 3 additions and 1 deletions
|
|
@ -687,6 +687,8 @@ struct ovfsconf {
|
|||
#define VFCF_SBDRY 0x01000000 /* Stop at Boundary: defer stop requests
|
||||
to kernel->user (AST) transition */
|
||||
#define VFCF_FILEMOUNT 0x02000000 /* allow mounting files */
|
||||
#define VFCF_FILEREVINC 0x04000000 /* va_filerev is incr. by one */
|
||||
#define VFCF_FILEREVCT 0x08000000 /* va_filerev is set to ctime */
|
||||
|
||||
typedef uint32_t fsctlop_t;
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ static struct vfsops ufs_vfsops = {
|
|||
.vfs_susp_clean = process_deferred_inactive,
|
||||
};
|
||||
|
||||
VFS_SET(ufs_vfsops, ufs, 0);
|
||||
VFS_SET(ufs_vfsops, ufs, VFCF_FILEREVINC);
|
||||
MODULE_VERSION(ufs, 1);
|
||||
|
||||
static b_strategy_t ffs_geom_strategy;
|
||||
|
|
|
|||
Loading…
Reference in a new issue