From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Vasily Averin <vvs@virtuozzo.com>
Subject: [for-next][PATCH 06/21] trigger_next should increase position index
Date: Thu, 30 Jan 2020 09:47:49 -0500 [thread overview]
Message-ID: <20200130144811.117984529@goodmis.org> (raw)
In-Reply-To: 20200130144743.527378179@goodmis.org
From: Vasily Averin <vvs@virtuozzo.com>
if seq_file .next fuction does not change position index,
read after some lseek can generate unexpected output.
Without patch:
# dd bs=30 skip=1 if=/sys/kernel/tracing/events/sched/sched_switch/trigger
dd: /sys/kernel/tracing/events/sched/sched_switch/trigger: cannot skip to specified offset
n traceoff snapshot stacktrace enable_event disable_event enable_hist disable_hist hist
# Available triggers:
# traceon traceoff snapshot stacktrace enable_event disable_event enable_hist disable_hist hist
6+1 records in
6+1 records out
206 bytes copied, 0.00027916 s, 738 kB/s
Notice the printing of "# Available triggers:..." after the line.
With the patch:
# dd bs=30 skip=1 if=/sys/kernel/tracing/events/sched/sched_switch/trigger
dd: /sys/kernel/tracing/events/sched/sched_switch/trigger: cannot skip to specified offset
n traceoff snapshot stacktrace enable_event disable_event enable_hist disable_hist hist
2+1 records in
2+1 records out
88 bytes copied, 0.000526867 s, 167 kB/s
It only prints the end of the file, and does not restart.
Link: http://lkml.kernel.org/r/3c35ee24-dd3a-8119-9c19-552ed253388a@virtuozzo.com
https://bugzilla.kernel.org/show_bug.cgi?id=206283
Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
kernel/trace/trace_events_trigger.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/kernel/trace/trace_events_trigger.c b/kernel/trace/trace_events_trigger.c
index 60959c31791d..dd34a1b46a86 100644
--- a/kernel/trace/trace_events_trigger.c
+++ b/kernel/trace/trace_events_trigger.c
@@ -116,9 +116,10 @@ static void *trigger_next(struct seq_file *m, void *t, loff_t *pos)
{
struct trace_event_file *event_file = event_file_data(m->private);
- if (t == SHOW_AVAILABLE_TRIGGERS)
+ if (t == SHOW_AVAILABLE_TRIGGERS) {
+ (*pos)++;
return NULL;
-
+ }
return seq_list_next(t, &event_file->triggers, pos);
}
--
2.24.1
next prev parent reply other threads:[~2020-01-30 14:49 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-30 14:47 [for-next][PATCH 00/21] tracing: Some more last minute updates for 5.6 Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 01/21] tracing/boot: Include required headers and sort it alphabetically Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 02/21] tracing/boot: Move external function declarations to kernel/trace/trace.h Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 03/21] tracing: Fix sched switch start/stop refcount racy updates Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 04/21] ftrace: fpid_next() should increase position index Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 05/21] tracing: eval_map_next() should always " Steven Rostedt
2020-01-30 14:47 ` Steven Rostedt [this message]
2020-01-30 14:47 ` [for-next][PATCH 07/21] tracing: Add trace_array_find/_get() to find instance trace arrays Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 08/21] tracing: Add trace_get/put_event_file() Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 09/21] tracing: Add synth_event_delete() Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 10/21] tracing: Add dynamic event command creation interface Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 11/21] tracing: Add synthetic event command generation functions Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 12/21] tracing: Add synth_event_trace() and related functions Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 13/21] tracing: Add synth event generation test module Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 14/21] tracing: Add kprobe event command generation functions Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 15/21] tracing: Change trace_boot to use kprobe_event interface Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 16/21] tracing: Add kprobe event command generation test module Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 17/21] tracing: Documentation for in-kernel synthetic event API Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 18/21] tracing: Move all function tracing configs together Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 19/21] tracing: Move tracing test module " Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 20/21] tracing: Move mmio tracer config up with the other tracers Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 21/21] tracing: Move tracing selftests to bottom of menu Steven Rostedt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200130144811.117984529@goodmis.org \
--to=rostedt@goodmis.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=vvs@virtuozzo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox