Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8d020765 authored by Al Viro's avatar Al Viro
Browse files

->splice_write() via ->write_iter()



iter_file_splice_write() - a ->splice_write() instance that gathers the
pipe buffers, builds a bio_vec-based iov_iter covering those and feeds
it to ->write_iter().  A bunch of simple cases coverted to that...

[AV: fixed the braino spotted by Cyrill]

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 62a8067a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1583,7 +1583,7 @@ const struct file_operations def_blk_fops = {
	.compat_ioctl	= compat_blkdev_ioctl,
#endif
	.splice_read	= generic_file_splice_read,
	.splice_write	= generic_file_splice_write,
	.splice_write	= iter_file_splice_write,
};

int ioctl_by_bdev(struct block_device *bdev, unsigned cmd, unsigned long arg)
+1 −1
Original line number Diff line number Diff line
@@ -77,7 +77,7 @@ const struct file_operations exofs_file_operations = {
	.fsync		= exofs_file_fsync,
	.flush		= exofs_flush,
	.splice_read	= generic_file_splice_read,
	.splice_write	= generic_file_splice_write,
	.splice_write	= iter_file_splice_write,
};

const struct inode_operations exofs_file_inode_operations = {
+1 −1
Original line number Diff line number Diff line
@@ -75,7 +75,7 @@ const struct file_operations ext2_file_operations = {
	.release	= ext2_release_file,
	.fsync		= ext2_fsync,
	.splice_read	= generic_file_splice_read,
	.splice_write	= generic_file_splice_write,
	.splice_write	= iter_file_splice_write,
};

#ifdef CONFIG_EXT2_FS_XIP
+1 −1
Original line number Diff line number Diff line
@@ -63,7 +63,7 @@ const struct file_operations ext3_file_operations = {
	.release	= ext3_release_file,
	.fsync		= ext3_sync_file,
	.splice_read	= generic_file_splice_read,
	.splice_write	= generic_file_splice_write,
	.splice_write	= iter_file_splice_write,
};

const struct inode_operations ext3_file_inode_operations = {
+1 −1
Original line number Diff line number Diff line
@@ -599,7 +599,7 @@ const struct file_operations ext4_file_operations = {
	.release	= ext4_release_file,
	.fsync		= ext4_sync_file,
	.splice_read	= generic_file_splice_read,
	.splice_write	= generic_file_splice_write,
	.splice_write	= iter_file_splice_write,
	.fallocate	= ext4_fallocate,
};

Loading