Hi Masami,
On 15/09/2023 09:01, Masami Hiramatsu (Google) wrote:
Hi Tero,
On Mon, 11 Sep 2023 17:17:04 +0300
Tero Kristo <tero.kristo@xxxxxxxxxxxxxxx> wrote:
The synth traces incorrectly print pointer to the synthetic event values
instead of the actual value when using u64 type. Fix by addressing the
contents of the union properly.
Thanks for pointing it out.
But I would like to see a new "case 8:" print code instead of changing
"default". Can you keep the default as it is and add "case 8:" case there?
Are you sure about that? I think keeping the default as is would just
print out a useless pointer value to the synth event itself (which is
what happened with u64 type.)
Anyways, that requires a new patch to be created on top as this has hit
the mainline as a fix already.
-Tero
Thanks,
Fixes: ddeea494a16f ("tracing/synthetic: Use union instead of casts")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Tero Kristo <tero.kristo@xxxxxxxxxxxxxxx>
---
kernel/trace/trace_events_synth.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/trace/trace_events_synth.c b/kernel/trace/trace_events_synth.c
index 7fff8235075f..070365959c0a 100644
--- a/kernel/trace/trace_events_synth.c
+++ b/kernel/trace/trace_events_synth.c
@@ -337,7 +337,7 @@ static void print_synth_event_num_val(struct trace_seq *s,
break;
default:
- trace_seq_printf(s, print_fmt, name, val, space);
+ trace_seq_printf(s, print_fmt, name, val->as_u64, space);
break;
}
}
--
2.40.1