diff options
author | Eric Dumazet <edumazet@google.com> | 2024-04-26 15:19:52 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2024-04-29 13:32:01 +0100 |
commit | e8dfd42c17faf183415323db1ef0c977be0d6489 (patch) | |
tree | c51745e2765effa88f3047a634efef44e00eebb1 /net/core | |
parent | Merge branch 'mlxsw-events-processing-performance' (diff) | |
download | linux-e8dfd42c17faf183415323db1ef0c977be0d6489.tar.gz linux-e8dfd42c17faf183415323db1ef0c977be0d6489.tar.bz2 linux-e8dfd42c17faf183415323db1ef0c977be0d6489.zip |
ipv6: introduce dst_rt6_info() helper
Instead of (struct rt6_info *)dst casts, we can use :
#define dst_rt6_info(_ptr) \
container_of_const(_ptr, struct rt6_info, dst)
Some places needed missing const qualifiers :
ip6_confirm_neigh(), ipv6_anycast_destination(),
ipv6_unicast_destination(), has_gateway()
v2: added missing parts (David Ahern)
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/dst_cache.c | 2 | ||||
-rw-r--r-- | net/core/filter.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/net/core/dst_cache.c b/net/core/dst_cache.c index 0ccfd5fa5cb9..b17171345d64 100644 --- a/net/core/dst_cache.c +++ b/net/core/dst_cache.c @@ -112,7 +112,7 @@ void dst_cache_set_ip6(struct dst_cache *dst_cache, struct dst_entry *dst, idst = this_cpu_ptr(dst_cache->cache); dst_cache_per_cpu_dst_set(this_cpu_ptr(dst_cache->cache), dst, - rt6_get_cookie((struct rt6_info *)dst)); + rt6_get_cookie(dst_rt6_info(dst))); idst->in6_saddr = *saddr; } EXPORT_SYMBOL_GPL(dst_cache_set_ip6); diff --git a/net/core/filter.c b/net/core/filter.c index 294670d3850d..5662464e1abd 100644 --- a/net/core/filter.c +++ b/net/core/filter.c @@ -2215,7 +2215,7 @@ static int bpf_out_neigh_v6(struct net *net, struct sk_buff *skb, rcu_read_lock(); if (!nh) { dst = skb_dst(skb); - nexthop = rt6_nexthop(container_of(dst, struct rt6_info, dst), + nexthop = rt6_nexthop(dst_rt6_info(dst), &ipv6_hdr(skb)->daddr); } else { nexthop = &nh->ipv6_nh; |