[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 08 Aug 2023 19:33:06 +0200
From: Sven Schnelle <svens@...ux.ibm.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH] tracing/synthetic: use union instead of casts
Steven Rostedt <rostedt@...dmis.org> writes:
> The "dynamic" I was using wasn't about the fields were dynamic (union), but
> because the field the offset/len combo represents is of dynamic size. It's
> used all over the trace_events code.
>
> I would have in include/linux/trace_events.h (right above struct trace_entry):
>
> /* Used to find the offset and length of dynamic fields in trace events */
> struct trace_dynamic_info {
> #ifdef CONFIG_CPU_BIG_ENDIAN
> u16 offset;
> u16 len;
> #else
> u16 len;
> u16 offset;
> #endif
> };
>
> And then it kernel/trace/trace.h:
>
> union trace_synthetic_field {
> u8 as_u8;
> u16 as_u16;
> u32 as_u32;
> u64 as_u64;
> struct trace_dynamic_info as_dynamic;
> };
Ok.
> I could work on the part of the trace_dynamic_info if you want.
Whatever you prefer. Should i update my patch and send it again, or do
you want to adjust it?
Thanks
Sven
Powered by blists - more mailing lists