tools lib traceevent: Fix %pM print format arg handling
Commit-ID: aaf05c725bed1c7a8c940d9215662c78bea05dfd Gitweb: http://git.kernel.org/tip/aaf05c725bed1c7a8c940d9215662c78bea05dfd Author: Steven Rostedt <[email protected]> AuthorDate: Mon, 9 Jan 2012 15:58:09 -0500 Committer: Namhyung Kim <[email protected]> CommitDate: Wed, 4 Jul 2012 13:40:30 +0900
tools lib traceevent: Fix %pM print format arg handling
When %pM is used, the arg value must be a 6 byte character that will be printed as a 6 byte MAC address. But the code does a break over the main code which updates the current processing arg to point to the next arg. If there are other print arguments after a %pM, they will be off by one. The next arg will still be processing the %pM arg.
Reported-by Johannes Berg <[email protected]>
Signed-off-by Steven Rostedt <[email protected]>
Signed-off-by Namhyung Kim <[email protected]>
--- tools/lib/traceevent/event-parse.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
tools/lib/traceevent/event-parse.c +1 -0
@@ -3858,6 +3858,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct event }else if (*(ptr+1 ) =='M' || *(ptr+1 ) =='m' ) {print_mac_arg (s, *(ptr+1 ), data, size, event, arg); ptr++; + arg = arg->next;break ; }