summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorZong Li <zong@andestech.com>2018-08-13 10:26:52 +0800
committerDavid S. Miller <davem@davemloft.net>2018-08-13 09:21:05 -0700
commit0192e7d46c776f7f735560bfa4d40eac3fd700f9 (patch)
treee79e552764d73bc2346f0ce4356536b03c75c293 /include
parenta72ce9ad7cfc96e640122b2821f6bbc3588815b2 (diff)
downloadblackbird-op-linux-0192e7d46c776f7f735560bfa4d40eac3fd700f9.tar.gz
blackbird-op-linux-0192e7d46c776f7f735560bfa4d40eac3fd700f9.zip
net: Change the layout of structure trace_event_raw_fib_table_lookup
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. Fixes: 9f323973c915 ("net/ipv4: Udate fib_table_lookup tracepoint") Signed-off-by: Zong Li <zong@andestech.com> Acked-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/trace/events/fib.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/trace/events/fib.h b/include/trace/events/fib.h
index 9763cddd0594..6271bab63bfb 100644
--- a/include/trace/events/fib.h
+++ b/include/trace/events/fib.h
@@ -22,6 +22,7 @@ TRACE_EVENT(fib_table_lookup,
__field( int, err )
__field( int, oif )
__field( int, iif )
+ __field( u8, proto )
__field( __u8, tos )
__field( __u8, scope )
__field( __u8, flags )
@@ -31,7 +32,6 @@ TRACE_EVENT(fib_table_lookup,
__array( __u8, saddr, 4 )
__field( u16, sport )
__field( u16, dport )
- __field( u8, proto )
__dynamic_array(char, name, IFNAMSIZ )
),
OpenPOWER on IntegriCloud