From: Steven Rostedt Date: Fri, 4 Nov 2011 20:32:25 +0000 (-0400) Subject: perf: Fix parsing of __print_flags() in TP_printk() X-Git-Tag: android-x86-4.4-r1~3989^2~97^2~2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=49908a1b25d448d68fd26faca260e1850201575f;p=android-x86%2Fkernel.git perf: Fix parsing of __print_flags() in TP_printk() A update is made to the sched:sched_switch event that adds some logic to the first parameter of the __print_flags() that shows the state of tasks. This change cause perf to fail parsing the flags. A simple fix is needed to have the parser be able to process ops within the argument. Cc: stable@vger.kernel.org Reported-by: Andrew Vagin Signed-off-by: Steven Rostedt --- diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c index 0a7ed5b5e281..6c164dc9ee95 100644 --- a/tools/perf/util/trace-event-parse.c +++ b/tools/perf/util/trace-event-parse.c @@ -1537,6 +1537,8 @@ process_flags(struct event *event, struct print_arg *arg, char **tok) field = malloc_or_die(sizeof(*field)); type = process_arg(event, field, &token); + while (type == EVENT_OP) + type = process_op(event, field, &token); if (test_type_token(type, token, EVENT_DELIM, ",")) goto out_free;