diff options
author | Christoph Hellwig <hch@lst.de> | 2010-06-01 21:59:18 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-07-05 11:22:52 -0700 |
commit | 9276b6f4b6b5bac6b81efb6e355c77b681ddde24 (patch) | |
tree | f0d24ea959fce47cc2fb2834a9d14755551850db /fs | |
parent | a07d9118270a41ff425a00194f100e25752f920f (diff) |
nfsd: nfsd_setattr needs to call commit_metadata
commit b160fdabe93a8a53094f90f02bf4dcb500782aab upstream.
The conversion of write_inode_now calls to commit_metadata in commit
f501912a35c02eadc55ca9396ece55fe36f785d0 missed out the call in nfsd_setattr.
But without this conversion we can't guarantee that a SETATTR request
has actually been commited to disk with XFS, which causes a regression
from 2.6.32 (only for NFSv2, but anyway).
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfsd/vfs.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c index 23c06f77f4ca..4eb9baa33081 100644 --- a/fs/nfsd/vfs.c +++ b/fs/nfsd/vfs.c @@ -443,8 +443,7 @@ nfsd_setattr(struct svc_rqst *rqstp, struct svc_fh *fhp, struct iattr *iap, if (size_change) put_write_access(inode); if (!err) - if (EX_ISSYNC(fhp->fh_export)) - write_inode_now(inode, 1); + commit_metadata(fhp); out: return err; |