Commit 8b7d9d09 authored by Trond Myklebust's avatar Trond Myklebust

NFSv4: Revert "Truncating file opens should also sync O_DIRECT writes"

We're not holding any locks, so both nfs_wb_all() and inode_dio_wait()
are unenforcible and have livelock potential. Just limit ourselves to
flushing out the data.
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
parent 9a773e7c
...@@ -66,7 +66,7 @@ nfs4_file_open(struct inode *inode, struct file *filp) ...@@ -66,7 +66,7 @@ nfs4_file_open(struct inode *inode, struct file *filp)
if (openflags & O_TRUNC) { if (openflags & O_TRUNC) {
attr.ia_valid |= ATTR_SIZE; attr.ia_valid |= ATTR_SIZE;
attr.ia_size = 0; attr.ia_size = 0;
nfs_sync_inode(inode); filemap_write_and_wait(inode->i_mapping);
} }
inode = NFS_PROTO(dir)->open_context(dir, ctx, openflags, &attr, NULL); inode = NFS_PROTO(dir)->open_context(dir, ctx, openflags, &attr, NULL);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment