NFSv4: Clear NFS_CAP_OPEN_XOR and NFS_CAP_DELEGTIME if not supported
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 29 Aug 2025 16:12:30 +0000 (09:12 -0700)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 29 Aug 2025 16:56:43 +0000 (12:56 -0400)
_nfs4_server_capabilities() should clear capabilities that are not
supported by the server.

Fixes: d2a00cceb93a ("NFSv4: Detect support for OPEN4_SHARE_ACCESS_WANT_OPEN_XOR_DELEGATION")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/nfs4proc.c

index d0f91d9430f6d04651a81a79e029d558c14d389e..ce61253efd45b45e793b7ed8d6018b8a504510e9 100644 (file)
@@ -4015,7 +4015,8 @@ static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *f
                memcpy(server->attr_bitmask, res.attr_bitmask, sizeof(server->attr_bitmask));
                server->caps &=
                        ~(NFS_CAP_ACLS | NFS_CAP_HARDLINKS | NFS_CAP_SYMLINKS |
-                         NFS_CAP_SECURITY_LABEL | NFS_CAP_FS_LOCATIONS);
+                         NFS_CAP_SECURITY_LABEL | NFS_CAP_FS_LOCATIONS |
+                         NFS_CAP_OPEN_XOR | NFS_CAP_DELEGTIME);
                server->fattr_valid = NFS_ATTR_FATTR_V4;
                if (res.attr_bitmask[0] & FATTR4_WORD0_ACL &&
                                res.acl_bitmask & ACL4_SUPPORT_ALLOW_ACL)