]> Pileus Git - ~andy/linux/blobdiff - fs/nfsd/vfs.c
Merge branch 'master' into upstream
[~andy/linux] / fs / nfsd / vfs.c
index 7c2e337d05af58fb2d733a6b688580f40d1221b5..c194793b642b8f5e35175ac52fed9c104606d274 100644 (file)
@@ -780,12 +780,9 @@ static inline int nfsd_dosync(struct file *filp, struct dentry *dp,
        int (*fsync) (struct file *, struct dentry *, int);
        int err;
 
-       err = filemap_fdatawrite(inode->i_mapping);
+       err = filemap_write_and_wait(inode->i_mapping);
        if (err == 0 && fop && (fsync = fop->fsync))
                err = fsync(filp, dp, 0);
-       if (err == 0)
-               err = filemap_fdatawait(inode->i_mapping);
-
        return err;
 }