diff mbox series

tracing: Make splice_read available again

Message ID 20230314013707.28814-1-sfoon.kim@samsung.com (mailing list archive)
State Accepted
Commit e400be674a1a40e9dcb2e95f84d6c1fd2d88f31d
Headers show
Series tracing: Make splice_read available again | expand

Commit Message

Sung-hun Kim March 14, 2023, 1:37 a.m. UTC
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@samsung.com>
---
 kernel/trace/trace.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

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,