Skip to content

Commit

Permalink
ipv6: Pass fib6_result to fib6_table_lookup tracepoint
Browse files Browse the repository at this point in the history
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 <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
dsahern authored and davem330 committed Apr 18, 2019
1 parent b7bc4b6 commit 8ff2e5b
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 11 deletions.
16 changes: 8 additions & 8 deletions include/trace/events/fib6.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@

TRACE_EVENT(fib6_table_lookup,

TP_PROTO(const struct net *net, const struct fib6_info *f6i,
TP_PROTO(const struct net *net, const struct fib6_result *res,
struct fib6_table *table, const struct flowi6 *flp),

TP_ARGS(net, f6i, table, flp),
TP_ARGS(net, res, table, flp),

TP_STRUCT__entry(
__field( u32, tb_id )
Expand All @@ -39,7 +39,7 @@ TRACE_EVENT(fib6_table_lookup,
struct in6_addr *in6;

__entry->tb_id = table->tb6_id;
__entry->err = ip6_rt_type_to_error(f6i->fib6_type);
__entry->err = ip6_rt_type_to_error(res->f6i->fib6_type);
__entry->oif = flp->flowi6_oif;
__entry->iif = flp->flowi6_iif;
__entry->tos = ip6_tclass(flp->flowlabel);
Expand All @@ -62,20 +62,20 @@ TRACE_EVENT(fib6_table_lookup,
__entry->dport = 0;
}

if (f6i->fib6_nh.fib_nh_dev) {
__assign_str(name, f6i->fib6_nh.fib_nh_dev);
if (res->nh && res->nh->fib_nh_dev) {
__assign_str(name, res->nh->fib_nh_dev);
} else {
__assign_str(name, "-");
}
if (f6i == net->ipv6.fib6_null_entry) {
if (res->f6i == net->ipv6.fib6_null_entry) {
struct in6_addr in6_zero = {};

in6 = (struct in6_addr *)__entry->gw;
*in6 = in6_zero;

} else if (f6i) {
} else if (res->nh) {
in6 = (struct in6_addr *)__entry->gw;
*in6 = f6i->fib6_nh.fib_nh_gw6;
*in6 = res->nh->fib_nh_gw6;
}
),

Expand Down
6 changes: 3 additions & 3 deletions net/ipv6/route.c
Original file line number Diff line number Diff line change
Expand Up @@ -1130,7 +1130,7 @@ static struct rt6_info *ip6_pol_route_lookup(struct net *net,
}

out:
trace_fib6_table_lookup(net, res.f6i, table, fl6);
trace_fib6_table_lookup(net, &res, table, fl6);

rcu_read_unlock();

Expand Down Expand Up @@ -1865,7 +1865,7 @@ struct fib6_info *fib6_table_lookup(struct net *net, struct fib6_table *table,
}
}

trace_fib6_table_lookup(net, res.f6i, table, fl6);
trace_fib6_table_lookup(net, &res, table, fl6);

return res.f6i;
}
Expand Down Expand Up @@ -2538,7 +2538,7 @@ static struct rt6_info *__ip6_route_redirect(struct net *net,

rcu_read_unlock();

trace_fib6_table_lookup(net, rt, table, fl6);
trace_fib6_table_lookup(net, &res, table, fl6);
return ret;
};

Expand Down

0 comments on commit 8ff2e5b

Please sign in to comment.