summaryrefslogtreecommitdiffstats
path: root/tools/lib
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2012-01-09 15:58:09 -0500
committerNamhyung Kim <namhyung@kernel.org>2012-07-04 13:40:30 +0900
commitaaf05c725bed1c7a8c940d9215662c78bea05dfd (patch)
tree54da02fec56da35c1ce9e27ad206b1c81a1ea4d0 /tools/lib
parent0866a97eb7562409ba792f5e904841dd8e23c8b5 (diff)
downloadlinux-aaf05c725bed1c7a8c940d9215662c78bea05dfd.tar.gz
linux-aaf05c725bed1c7a8c940d9215662c78bea05dfd.tar.bz2
linux-aaf05c725bed1c7a8c940d9215662c78bea05dfd.zip
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 <johannes.berg@intel.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Link: http://lkml.kernel.org/n/tip-q3g0n1espikynsdkpbi6ue6t@git.kernel.org Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Diffstat (limited to 'tools/lib')
-rw-r--r--tools/lib/traceevent/event-parse.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c
index 872dd35db051..da06c33dcf41 100644
--- a/tools/lib/traceevent/event-parse.c
+++ b/tools/lib/traceevent/event-parse.c
@@ -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;
}