diff options
| -rw-r--r-- | fs/nfsd/nfs4state.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index c29b6ed2a0bb..1578d7a2667e 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
| @@ -1588,6 +1588,10 @@ nfs4_upgrade_open(struct svc_rqst *rqstp, struct svc_fh *cur_fh, struct nfs4_sta | |||
| 1588 | int err = get_write_access(inode); | 1588 | int err = get_write_access(inode); |
| 1589 | if (err) | 1589 | if (err) |
| 1590 | return nfserrno(err); | 1590 | return nfserrno(err); |
| 1591 | err = mnt_want_write(cur_fh->fh_export->ex_path.mnt); | ||
| 1592 | if (err) | ||
| 1593 | return nfserrno(err); | ||
| 1594 | file_take_write(filp); | ||
| 1591 | } | 1595 | } |
| 1592 | status = nfsd4_truncate(rqstp, cur_fh, open); | 1596 | status = nfsd4_truncate(rqstp, cur_fh, open); |
| 1593 | if (status) { | 1597 | if (status) { |
