[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20230314013707.28814-1-sfoon.kim@samsung.com>
Date: Tue, 14 Mar 2023 10:37:07 +0900
From: Sung-hun Kim <sfoon.kim@...sung.com>
To: rostedt@...dmis.org, mhirmat@...nel.org,
linux-kernel@...r.kernel.org, linux-trace-kernel@...r.kernel.org
Cc: sungguk.na@...sung.com, sw0312.kim@...sung.com,
Sung-hun Kim <sfoon.kim@...sung.com>
Subject: [PATCH] tracing: Make splice_read available again
Since the commit 36e2c7421f02 ("fs: don't allow splice read/write
without explicit ops") is applied to the kernel, splice() and
sendfile() calls on the trace file (/sys/kernel/debug/tracing
/trace) return EINVAL.
This patch restores these system calls by initializing splice_read
in file_operations of the trace file. This patch only enables such
functionalities for the read case.
Signed-off-by: Sung-hun Kim <sfoon.kim@...sung.com>
---
kernel/trace/trace.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 45551c7b4c36..937e9676dfd4 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -5167,6 +5167,8 @@ loff_t tracing_lseek(struct file *file, loff_t offset, int whence)
static const struct file_operations tracing_fops = {
.open = tracing_open,
.read = seq_read,
+ .read_iter = seq_read_iter,
+ .splice_read = generic_file_splice_read,
.write = tracing_write_stub,
.llseek = tracing_lseek,
.release = tracing_release,
--
2.17.1
Powered by blists - more mailing lists