summary refs log tree commit diff
path: root/fs/nilfs2
diff options
context:
space:
mode:
authorJoachim Henke <joachim.henke@t-systems.com>2021-02-09 13:42:36 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2021-02-10 11:19:58 -0800
commita35d8f016e0b68634035217d06d1c53863456b50 (patch)
tree480e16f85f9f96d920af45b2a9bff3997bd7872f /fs/nilfs2
parent3286222fc609dea27bd16ac02c55d3f1c3190063 (diff)
downloadlinux-a35d8f016e0b68634035217d06d1c53863456b50.tar.gz
nilfs2: make splice write available again
Since 5.10, splice() or sendfile() to NILFS2 return EINVAL.  This was
caused by commit 36e2c7421f02 ("fs: don't allow splice read/write
without explicit ops").

This patch initializes the splice_write field in file_operations, like
most file systems do, to restore the functionality.

Link: https://lkml.kernel.org/r/1612784101-14353-1-git-send-email-konishi.ryusuke@gmail.com
Signed-off-by: Joachim Henke <joachim.henke@t-systems.com>
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Tested-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Cc: <stable@vger.kernel.org>	[5.10+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/nilfs2')
-rw-r--r--fs/nilfs2/file.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nilfs2/file.c b/fs/nilfs2/file.c
index 64bc81363c6c..e1bd592ce700 100644
--- a/fs/nilfs2/file.c
+++ b/fs/nilfs2/file.c
@@ -141,6 +141,7 @@ const struct file_operations nilfs_file_operations = {
 	/* .release	= nilfs_release_file, */
 	.fsync		= nilfs_sync_file,
 	.splice_read	= generic_file_splice_read,
+	.splice_write   = iter_file_splice_write,
 };
 
 const struct inode_operations nilfs_file_inode_operations = {