mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-24 05:04:00 +08:00
nfsd: Set lc_size_chg before ops->proc_layoutcommit
After proc_layoutcommit success, i_size_read(inode) always >= new_size. Just set lc_size_chg before proc_layoutcommit, if proc_layoutcommit failed, nfsd will skip the lc_size_chg, so it's no harm. Signed-off-by: Kinglong Mee <kinglongmee@gmail.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
28e51af7c6
commit
d8398fc117
@ -1364,10 +1364,6 @@ nfsd4_layoutcommit(struct svc_rqst *rqstp,
|
||||
goto out;
|
||||
}
|
||||
|
||||
nfserr = ops->proc_layoutcommit(inode, lcp);
|
||||
if (nfserr)
|
||||
goto out_put_stid;
|
||||
|
||||
if (new_size > i_size_read(inode)) {
|
||||
lcp->lc_size_chg = 1;
|
||||
lcp->lc_newsize = new_size;
|
||||
@ -1375,7 +1371,7 @@ nfsd4_layoutcommit(struct svc_rqst *rqstp,
|
||||
lcp->lc_size_chg = 0;
|
||||
}
|
||||
|
||||
out_put_stid:
|
||||
nfserr = ops->proc_layoutcommit(inode, lcp);
|
||||
nfs4_put_stid(&ls->ls_stid);
|
||||
out:
|
||||
return nfserr;
|
||||
|
Loading…
Reference in New Issue
Block a user