diff mbox series

fs: use call_read_iter(file, &kiocb, &iter); for __kernel_{read|write}

Message ID 18179f8b59d.b7fe20f5281387.193977444358758943@linux.beauty (mailing list archive)
State New, archived
Headers show
Series fs: use call_read_iter(file, &kiocb, &iter); for __kernel_{read|write} | expand

Commit Message

Li Chen June 19, 2022, 3:19 a.m. UTC
From: Li Chen <lchen@ambarella.com>

Just use these helper functions to replace f_op->{read,write}_iter()

Signed-off-by: Li Chen <lchen@ambarella.com>
---
 fs/read_write.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Matthew Wilcox June 19, 2022, 3:17 p.m. UTC | #1
On Sat, Jun 18, 2022 at 08:19:11PM -0700, Li Chen wrote:
> From: Li Chen <lchen@ambarella.com>
> 
> Just use these helper functions to replace f_op->{read,write}_iter()

... why?  You've saved a massive two bytes of kernel source.
What is the point of these functions?  I'd rather just get rid of them.

> Signed-off-by: Li Chen <lchen@ambarella.com>
> ---
>  fs/read_write.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/read_write.c b/fs/read_write.c
> index b1b1cdfee9d3..9518aeca0273 100644
> --- a/fs/read_write.c
> +++ b/fs/read_write.c
> @@ -437,7 +437,7 @@ ssize_t __kernel_read(struct file *file, void *buf, size_t count, loff_t *pos)
>  	init_sync_kiocb(&kiocb, file);
>  	kiocb.ki_pos = pos ? *pos : 0;
>  	iov_iter_kvec(&iter, READ, &iov, 1, iov.iov_len);
> -	ret = file->f_op->read_iter(&kiocb, &iter);
> +	ret = call_read_iter(file, &kiocb, &iter);
>  	if (ret > 0) {
>  		if (pos)
>  			*pos = kiocb.ki_pos;
> @@ -533,7 +533,7 @@ ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t
>  	init_sync_kiocb(&kiocb, file);
>  	kiocb.ki_pos = pos ? *pos : 0;
>  	iov_iter_kvec(&iter, WRITE, &iov, 1, iov.iov_len);
> -	ret = file->f_op->write_iter(&kiocb, &iter);
> +	ret = call_write_iter(file, &kiocb, &iter);
>  	if (ret > 0) {
>  		if (pos)
>  			*pos = kiocb.ki_pos;
> -- 
> 2.36.1
> 
>
Jens Axboe June 19, 2022, 3:53 p.m. UTC | #2
On 6/19/22 9:17 AM, Matthew Wilcox wrote:
> On Sat, Jun 18, 2022 at 08:19:11PM -0700, Li Chen wrote:
>> From: Li Chen <lchen@ambarella.com>
>>
>> Just use these helper functions to replace f_op->{read,write}_iter()
> 
> ... why?  You've saved a massive two bytes of kernel source.
> What is the point of these functions?  I'd rather just get rid of them.

Agree, kill both of these helpers. They aren't very broadly used either.
diff mbox series

Patch

diff --git a/fs/read_write.c b/fs/read_write.c
index b1b1cdfee9d3..9518aeca0273 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -437,7 +437,7 @@  ssize_t __kernel_read(struct file *file, void *buf, size_t count, loff_t *pos)
 	init_sync_kiocb(&kiocb, file);
 	kiocb.ki_pos = pos ? *pos : 0;
 	iov_iter_kvec(&iter, READ, &iov, 1, iov.iov_len);
-	ret = file->f_op->read_iter(&kiocb, &iter);
+	ret = call_read_iter(file, &kiocb, &iter);
 	if (ret > 0) {
 		if (pos)
 			*pos = kiocb.ki_pos;
@@ -533,7 +533,7 @@  ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t
 	init_sync_kiocb(&kiocb, file);
 	kiocb.ki_pos = pos ? *pos : 0;
 	iov_iter_kvec(&iter, WRITE, &iov, 1, iov.iov_len);
-	ret = file->f_op->write_iter(&kiocb, &iter);
+	ret = call_write_iter(file, &kiocb, &iter);
 	if (ret > 0) {
 		if (pos)
 			*pos = kiocb.ki_pos;