]> Pileus Git - ~andy/linux/blobdiff - fs/nfs/inode.c
Merge tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[~andy/linux] / fs / nfs / inode.c
index 471ba59c42f91dc846c98d2a2c7fdd40972ccecd..18ab2da4eeb65dbf7c8f7d7b578a35fc5251b0b6 100644 (file)
@@ -274,12 +274,6 @@ void nfs_setsecurity(struct inode *inode, struct nfs_fattr *fattr,
        if (label == NULL)
                return;
 
-       if (nfs_server_capable(inode, NFS_CAP_SECURITY_LABEL) == 0)
-               return;
-
-       if (NFS_SERVER(inode)->nfs_client->cl_minorversion < 2)
-               return;
-
        if ((fattr->valid & NFS_ATTR_FATTR_V4_SECURITY_LABEL) && inode->i_security) {
                error = security_inode_notifysecctx(inode, label->label,
                                label->len);
@@ -923,6 +917,8 @@ __nfs_revalidate_inode(struct nfs_server *server, struct inode *inode)
        if (nfsi->cache_validity & NFS_INO_INVALID_ACL)
                nfs_zap_acl_cache(inode);
 
+       nfs_setsecurity(inode, fattr, label);
+
        dfprintk(PAGECACHE, "NFS: (%s/%Ld) revalidation complete\n",
                inode->i_sb->s_id,
                (long long)NFS_FILEID(inode));