From: Sasha Levin Date: Sat, 15 Oct 2022 11:24:49 +0000 (-0400) Subject: Fixes for 5.10 X-Git-Tag: v5.4.219~200 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a6aac2bb1381e0eff3d52afe7da4e3d4194f8be8;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 5.10 Signed-off-by: Sasha Levin --- diff --git a/queue-5.10/revert-fs-check-fmode_lseek-to-control-internal-pipe.patch b/queue-5.10/revert-fs-check-fmode_lseek-to-control-internal-pipe.patch new file mode 100644 index 00000000000..a2df275af6f --- /dev/null +++ b/queue-5.10/revert-fs-check-fmode_lseek-to-control-internal-pipe.patch @@ -0,0 +1,47 @@ +From 0dfdd2724b00061970f033fbc15439a33828be9b Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sat, 15 Oct 2022 07:18:38 -0400 +Subject: Revert "fs: check FMODE_LSEEK to control internal pipe splicing" + +This reverts commit fd0a6e99b61e6c08fa5cf585d54fd956f70c73a6. + +Which was upstream commit 97ef77c52b789ec1411d360ed99dca1efe4b2c81. + +The commit is missing dependencies and breaks NFS tests, remove it for +now. + +Reported-by: Saeed Mirzamohammadi +Signed-off-by: Sasha Levin +--- + fs/splice.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/fs/splice.c b/fs/splice.c +index 6610e55c0e2a..866d5c2367b2 100644 +--- a/fs/splice.c ++++ b/fs/splice.c +@@ -806,15 +806,17 @@ ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd, + { + struct pipe_inode_info *pipe; + long ret, bytes; ++ umode_t i_mode; + size_t len; + int i, flags, more; + + /* +- * We require the input to be seekable, as we don't want to randomly +- * drop data for eg socket -> socket splicing. Use the piped splicing +- * for that! ++ * We require the input being a regular file, as we don't want to ++ * randomly drop data for eg socket -> socket splicing. Use the ++ * piped splicing for that! + */ +- if (unlikely(!(in->f_mode & FMODE_LSEEK))) ++ i_mode = file_inode(in)->i_mode; ++ if (unlikely(!S_ISREG(i_mode) && !S_ISBLK(i_mode))) + return -EINVAL; + + /* +-- +2.35.1 + diff --git a/queue-5.10/series b/queue-5.10/series new file mode 100644 index 00000000000..6338472dbbf --- /dev/null +++ b/queue-5.10/series @@ -0,0 +1 @@ +revert-fs-check-fmode_lseek-to-control-internal-pipe.patch