Message ID | 20181210134522.3f71e2ca@gandalf.local.home (mailing list archive) |
---|---|
State | Accepted |
Commit | f024cf085c423bac7512479f45c34ee9a24af7ce |
Headers | show |
Series | tools/lib/traceevent: Fix processing of dereferenced args in bprintk events | expand |
Em Mon, Dec 10, 2018 at 01:45:22PM -0500, Steven Rostedt escreveu: > From: "Steven Rostedt (VMware)" <rostedt@goodmis.org> > > In the case that a bprintk event has a dereferenced pointer that is stored > as a string, and there's more values to process (more args), the arg was not > updated to point to the next arg after processing the dereferenced pointer, > and it screwed up what was to be displayed. Thanks, applied. > Cc: stable@vger.kernel.org > Fixes: 7db96bb49629 ("tools lib traceevent: Handle new pointer processing of bprint strings") > Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> > --- > tools/lib/traceevent/event-parse.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c > index 3692f29fee46..70144b98141c 100644 > --- a/tools/lib/traceevent/event-parse.c > +++ b/tools/lib/traceevent/event-parse.c > @@ -4970,6 +4970,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct tep_e > > if (arg->type == TEP_PRINT_BSTRING) { > trace_seq_puts(s, arg->string.string); > + arg = arg->next; > break; > } > > -- > 2.19.1
On Mon, 10 Dec 2018 15:48:07 -0300 Arnaldo Carvalho de Melo <acme@kernel.org> wrote: > Em Mon, Dec 10, 2018 at 01:45:22PM -0500, Steven Rostedt escreveu: > > From: "Steven Rostedt (VMware)" <rostedt@goodmis.org> > > > > In the case that a bprintk event has a dereferenced pointer that is stored > > as a string, and there's more values to process (more args), the arg was not > > updated to point to the next arg after processing the dereferenced pointer, > > and it screwed up what was to be displayed. > > Thanks, applied. > > > Cc: stable@vger.kernel.org > > Fixes: 7db96bb49629 ("tools lib traceevent: Handle new pointer processing of bprint strings") Arnaldo, It seems that I cut and pasted the sha1 of the "fixes" part wrong. Can you add a "3". That is, the above should have been: 37db96bb49629 Thanks, -- Steve > > > Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> > > --- > > tools/lib/traceevent/event-parse.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c > > index 3692f29fee46..70144b98141c 100644 > > --- a/tools/lib/traceevent/event-parse.c > > +++ b/tools/lib/traceevent/event-parse.c > > @@ -4970,6 +4970,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct tep_e > > > > if (arg->type == TEP_PRINT_BSTRING) { > > trace_seq_puts(s, arg->string.string); > > + arg = arg->next; > > break; > > } > > > > -- > > 2.19.1 >
Em Mon, Dec 10, 2018 at 04:26:21PM -0500, Steven Rostedt escreveu: > On Mon, 10 Dec 2018 15:48:07 -0300 > Arnaldo Carvalho de Melo <acme@kernel.org> wrote: > > > Em Mon, Dec 10, 2018 at 01:45:22PM -0500, Steven Rostedt escreveu: > > > From: "Steven Rostedt (VMware)" <rostedt@goodmis.org> > > > > > > In the case that a bprintk event has a dereferenced pointer that is stored > > > as a string, and there's more values to process (more args), the arg was not > > > updated to point to the next arg after processing the dereferenced pointer, > > > and it screwed up what was to be displayed. > > > > Thanks, applied. > > > > > Cc: stable@vger.kernel.org > > > Fixes: 7db96bb49629 ("tools lib traceevent: Handle new pointer processing of bprint strings") > > Arnaldo, > > It seems that I cut and pasted the sha1 of the "fixes" part wrong. Can > you add a "3". That is, the above should have been: 37db96bb49629 Done, git rebase -i + reword -> push -f'ed :-) https://git.kernel.org/acme/c/1e862fa6b4e9 - Arnaldo > Thanks, > > -- Steve > > > > > > Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> > > > --- > > > tools/lib/traceevent/event-parse.c | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c > > > index 3692f29fee46..70144b98141c 100644 > > > --- a/tools/lib/traceevent/event-parse.c > > > +++ b/tools/lib/traceevent/event-parse.c > > > @@ -4970,6 +4970,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct tep_e > > > > > > if (arg->type == TEP_PRINT_BSTRING) { > > > trace_seq_puts(s, arg->string.string); > > > + arg = arg->next; > > > break; > > > } > > > > > > -- > > > 2.19.1 > >
diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index 3692f29fee46..70144b98141c 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -4970,6 +4970,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct tep_e if (arg->type == TEP_PRINT_BSTRING) { trace_seq_puts(s, arg->string.string); + arg = arg->next; break; }