summaryrefslogtreecommitdiffstats
path: root/include/trace
diff options
context:
space:
mode:
authorDavid Ahern <dsahern@gmail.com>2019-04-16 17:36:09 -0400
committerDavid S. Miller <davem@davemloft.net>2019-04-18 02:10:47 -0400
commit8ff2e5b26cb84b1b0f502c0b7a3c62e4c4d86acc (patch)
tree3676e0050d1656c48ba403efbe74053c73e2f364 /include/trace
parentb7bc4b6a620becacbc70fc617b8bbdb16f401f85 (diff)
ipv6: Pass fib6_result to fib6_table_lookup tracepoint
Change fib6_table_lookup tracepoint to take the fib6_result and use the fib6_info and fib6_nh from it. Signed-off-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/trace')
-rw-r--r--include/trace/events/fib6.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/include/trace/events/fib6.h b/include/trace/events/fib6.h
index 6d05ebdd669c..70e252d926ea 100644
--- a/include/trace/events/fib6.h
+++ b/include/trace/events/fib6.h
@@ -12,10 +12,10 @@
12 12
13TRACE_EVENT(fib6_table_lookup, 13TRACE_EVENT(fib6_table_lookup,
14 14
15 TP_PROTO(const struct net *net, const struct fib6_info *f6i, 15 TP_PROTO(const struct net *net, const struct fib6_result *res,
16 struct fib6_table *table, const struct flowi6 *flp), 16 struct fib6_table *table, const struct flowi6 *flp),
17 17
18 TP_ARGS(net, f6i, table, flp), 18 TP_ARGS(net, res, table, flp),
19 19
20 TP_STRUCT__entry( 20 TP_STRUCT__entry(
21 __field( u32, tb_id ) 21 __field( u32, tb_id )
@@ -39,7 +39,7 @@ TRACE_EVENT(fib6_table_lookup,
39 struct in6_addr *in6; 39 struct in6_addr *in6;
40 40
41 __entry->tb_id = table->tb6_id; 41 __entry->tb_id = table->tb6_id;
42 __entry->err = ip6_rt_type_to_error(f6i->fib6_type); 42 __entry->err = ip6_rt_type_to_error(res->f6i->fib6_type);
43 __entry->oif = flp->flowi6_oif; 43 __entry->oif = flp->flowi6_oif;
44 __entry->iif = flp->flowi6_iif; 44 __entry->iif = flp->flowi6_iif;
45 __entry->tos = ip6_tclass(flp->flowlabel); 45 __entry->tos = ip6_tclass(flp->flowlabel);
@@ -62,20 +62,20 @@ TRACE_EVENT(fib6_table_lookup,
62 __entry->dport = 0; 62 __entry->dport = 0;
63 } 63 }
64 64
65 if (f6i->fib6_nh.fib_nh_dev) { 65 if (res->nh && res->nh->fib_nh_dev) {
66 __assign_str(name, f6i->fib6_nh.fib_nh_dev); 66 __assign_str(name, res->nh->fib_nh_dev);
67 } else { 67 } else {
68 __assign_str(name, "-"); 68 __assign_str(name, "-");
69 } 69 }
70 if (f6i == net->ipv6.fib6_null_entry) { 70 if (res->f6i == net->ipv6.fib6_null_entry) {
71 struct in6_addr in6_zero = {}; 71 struct in6_addr in6_zero = {};
72 72
73 in6 = (struct in6_addr *)__entry->gw; 73 in6 = (struct in6_addr *)__entry->gw;
74 *in6 = in6_zero; 74 *in6 = in6_zero;
75 75
76 } else if (f6i) { 76 } else if (res->nh) {
77 in6 = (struct in6_addr *)__entry->gw; 77 in6 = (struct in6_addr *)__entry->gw;
78 *in6 = f6i->fib6_nh.fib_nh_gw6; 78 *in6 = res->nh->fib_nh_gw6;
79 } 79 }
80 ), 80 ),
81 81