diff options
| -rw-r--r-- | fs/nfsd/vfs.c | 13 | 
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) | 
