Re: [PATCH] net: Change the layout of structure trace_event_raw_fib_table_lookup

From: Zong Li
Date: Tue Aug 14 2018 - 09:27:05 EST


David Ahern <dsahern@xxxxxxxxx> æ 2018å8æ13æ éä äå10:40åéï
>
> On 8/12/18 8:26 PM, Zong Li wrote:
> > There is an unalignment access about the structure
> > 'trace_event_raw_fib_table_lookup'.
> >
> > In include/trace/events/fib.h, there is a memory operation which casting
> > the 'src' data member to a pointer, and then store a value to this
> > pointer point to.
> >
> > p32 = (__be32 *) __entry->src;
> > *p32 = flp->saddr;
> >
> > The offset of 'src' in structure trace_event_raw_fib_table_lookup is not
> > four bytes alignment. On some architectures, they don't permit the
> > unalignment access, it need to pay the price to handle this situation in
> > exception handler.
> >
> > Adjust the layout of structure to avoid this case.
> >
> > Signed-off-by: Zong Li <zong@xxxxxxxxxxxxx>
> > ---
> > include/trace/events/fib.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
>
> Fixes: 9f323973c915 ("net/ipv4: Udate fib_table_lookup tracepoint")
> Acked-by: David Ahern <dsahern@xxxxxxxxx>
>
> Do you also need a similar change to fib6_table_lookup in
> include/trace/events/fib6.h?

Hi David,

Though I don't encounter difficulties on it for now, but I think it
has the same situation,
How do you think that also change the layout in include/trace/events/fib6.h?