mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-15 21:30:43 +00:00
nfs: switch to iter_splice_write_file()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
96f9bc8fbc
commit
4da54c218d
@ -690,36 +690,6 @@ out_swapfile:
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(nfs_file_write);
|
||||
|
||||
ssize_t nfs_file_splice_write(struct pipe_inode_info *pipe,
|
||||
struct file *filp, loff_t *ppos,
|
||||
size_t count, unsigned int flags)
|
||||
{
|
||||
struct inode *inode = file_inode(filp);
|
||||
unsigned long written = 0;
|
||||
ssize_t ret;
|
||||
|
||||
dprintk("NFS splice_write(%pD2, %lu@%llu)\n",
|
||||
filp, (unsigned long) count, (unsigned long long) *ppos);
|
||||
|
||||
/*
|
||||
* The combination of splice and an O_APPEND destination is disallowed.
|
||||
*/
|
||||
|
||||
ret = generic_file_splice_write(pipe, filp, ppos, count, flags);
|
||||
if (ret > 0)
|
||||
written = ret;
|
||||
|
||||
if (ret >= 0 && nfs_need_sync_write(filp, inode)) {
|
||||
int err = vfs_fsync(filp, 0);
|
||||
if (err < 0)
|
||||
ret = err;
|
||||
}
|
||||
if (ret > 0)
|
||||
nfs_add_stats(inode, NFSIOS_NORMALWRITTENBYTES, written);
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(nfs_file_splice_write);
|
||||
|
||||
static int
|
||||
do_getlk(struct file *filp, int cmd, struct file_lock *fl, int is_local)
|
||||
{
|
||||
@ -950,7 +920,7 @@ const struct file_operations nfs_file_operations = {
|
||||
.lock = nfs_lock,
|
||||
.flock = nfs_flock,
|
||||
.splice_read = nfs_file_splice_read,
|
||||
.splice_write = nfs_file_splice_write,
|
||||
.splice_write = iter_file_splice_write,
|
||||
.check_flags = nfs_check_flags,
|
||||
.setlease = nfs_setlease,
|
||||
};
|
||||
|
@ -328,8 +328,6 @@ ssize_t nfs_file_write(struct kiocb *, struct iov_iter *);
|
||||
int nfs_file_release(struct inode *, struct file *);
|
||||
int nfs_lock(struct file *, int, struct file_lock *);
|
||||
int nfs_flock(struct file *, int, struct file_lock *);
|
||||
ssize_t nfs_file_splice_write(struct pipe_inode_info *, struct file *, loff_t *,
|
||||
size_t, unsigned int);
|
||||
int nfs_check_flags(int);
|
||||
int nfs_setlease(struct file *, long, struct file_lock **);
|
||||
|
||||
|
@ -130,7 +130,7 @@ const struct file_operations nfs4_file_operations = {
|
||||
.lock = nfs_lock,
|
||||
.flock = nfs_flock,
|
||||
.splice_read = nfs_file_splice_read,
|
||||
.splice_write = nfs_file_splice_write,
|
||||
.splice_write = iter_file_splice_write,
|
||||
.check_flags = nfs_check_flags,
|
||||
.setlease = nfs_setlease,
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user