aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/nfsd/vfs.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
index 9152f87eea18..085ded6f6d3a 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -61,12 +61,6 @@
61#define NFSDDBG_FACILITY NFSDDBG_FILEOP 61#define NFSDDBG_FACILITY NFSDDBG_FILEOP
62 62
63 63
64/* We must ignore files (but only files) which might have mandatory
65 * locks on them because there is no way to know if the accesser has
66 * the lock.
67 */
68#define IS_ISMNDLK(i) (S_ISREG((i)->i_mode) && mandatory_lock(i))
69
70/* 64/*
71 * This is a cache of readahead params that help us choose the proper 65 * This is a cache of readahead params that help us choose the proper
72 * readahead strategy. Initially, we set all readahead parameters to 0 66 * readahead strategy. Initially, we set all readahead parameters to 0
@@ -680,7 +674,12 @@ nfsd_open(struct svc_rqst *rqstp, struct svc_fh *fhp, int type,
680 err = nfserr_perm; 674 err = nfserr_perm;
681 if (IS_APPEND(inode) && (access & MAY_WRITE)) 675 if (IS_APPEND(inode) && (access & MAY_WRITE))
682 goto out; 676 goto out;
683 if (IS_ISMNDLK(inode)) 677 /*
678 * We must ignore files (but only files) which might have mandatory
679 * locks on them because there is no way to know if the accesser has
680 * the lock.
681 */
682 if (S_ISREG((inode)->i_mode) && mandatory_lock(inode))
684 goto out; 683 goto out;
685 684
686 if (!inode->i_fop) 685 if (!inode->i_fop)