]> git.baikalelectronics.ru Git - kernel.git/commitdiff
nfs_clone_sb_security(): simplify the check for server bogosity
authorAl Viro <viro@zeniv.linux.org.uk>
Tue, 10 Dec 2019 12:31:02 +0000 (07:31 -0500)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Wed, 15 Jan 2020 15:15:16 +0000 (10:15 -0500)
We used to check ->i_op for being nfs_dir_inode_operations.  With
separate inode_operations for v3 and v4 that became bogus, but
rather than going for protocol-dependent comparison we could've
just checked ->i_fop instead; _that_ is the same for all protocol
versions.

Reviewed-by: David Howells <dhowells@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
fs/nfs/super.c

index 2bcf0f8295e05e39278881d4af3fbbef8cde898b..bec6c341f72c54d9b7ec21236eb769effa603248 100644 (file)
@@ -2578,7 +2578,7 @@ int nfs_clone_sb_security(struct super_block *s, struct dentry *mntroot,
        unsigned long kflags = 0, kflags_out = 0;
 
        /* clone any lsm security options from the parent to the new sb */
-       if (d_inode(mntroot)->i_op != NFS_SB(s)->nfs_client->rpc_ops->dir_inode_ops)
+       if (d_inode(mntroot)->i_fop != &nfs_dir_operations)
                return -ESTALE;
 
        if (NFS_SB(s)->caps & NFS_CAP_SECURITY_LABEL)