From: Steven Rostedt (Red Hat) Date: Tue, 9 Feb 2016 20:40:17 +0000 (-0500) Subject: tools lib traceevent: Fix output of %llu for 64 bit values read on 32 bit machines X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=a66673a07e260807f570db8f08a9c1207932c665;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git tools lib traceevent: Fix output of %llu for 64 bit values read on 32 bit machines When a long value is read on 32 bit machines for 64 bit output, the parsing needs to change "%lu" into "%llu", as the value is read natively. Unfortunately, if "%llu" is already there, the code will add another "l" to it and fail to parse it properly. Signed-off-by: Steven Rostedt Cc: Andrew Morton Link: http://lkml.kernel.org/r/20160209204237.337024613@goodmis.org Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index fb790aa757eb..865dea55454b 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -4978,7 +4978,7 @@ static void pretty_print(struct trace_seq *s, void *data, int size, struct event break; } } - if (pevent->long_size == 8 && ls && + if (pevent->long_size == 8 && ls == 1 && sizeof(long) != 8) { char *p;