Home
last modified time | relevance | path

Searched refs:fib6_nh (Results 1 – 14 of 14) sorted by relevance

/linux-6.15/tools/testing/selftests/bpf/progs/
H A Dbpf_iter_ipv6_route.c17 struct fib6_nh *fib6_nh; in dump_ipv6_route() local
24 fib6_nh = &rt->fib6_nh[0]; in dump_ipv6_route()
30 fib6_nh = &nh->nh_info->fib6_nh; in dump_ipv6_route()
40 if (fib6_nh->fib_nh_gw_family) { in dump_ipv6_route()
42 BPF_SEQ_PRINTF(seq, "%pi6 ", &fib6_nh->fib_nh_gw6); in dump_ipv6_route()
47 dev = fib6_nh->fib_nh_dev; in dump_ipv6_route()
/linux-6.15/include/net/
H A Dipv6_stubs.h16 struct fib6_nh;
47 int (*fib6_nh_init)(struct net *net, struct fib6_nh *fib6_nh,
50 void (*fib6_nh_release)(struct fib6_nh *fib6_nh);
51 void (*fib6_nh_release_dsts)(struct fib6_nh *fib6_nh);
H A Dnexthop.h70 struct fib6_nh fib6_nh; member
401 BUILD_BUG_ON(offsetof(struct fib6_nh, nh_common) != 0); in nexthop_fib_nhc()
510 static inline struct fib6_nh *nexthop_fib6_nh(struct nexthop *nh) in nexthop_fib6_nh()
525 return &nhi->fib6_nh; in nexthop_fib6_nh()
532 struct fib6_nh *fib6_nh; in fib6_info_nh_dev() local
534 fib6_nh = f6i->nh ? nexthop_fib6_nh(f6i->nh) : f6i->fib6_nh; in fib6_info_nh_dev()
535 return fib6_nh->fib_nh_dev; in fib6_info_nh_dev()
551 res->nh = &nhi->fib6_nh; in nexthop_path_fib6_result()
556 int (*cb)(struct fib6_nh *nh, void *arg),
H A Dip6_fib.h147 struct fib6_nh { struct
203 struct fib6_nh fib6_nh[]; member
222 struct fib6_nh *nh;
488 int fib6_nh_init(struct net *net, struct fib6_nh *fib6_nh,
491 void fib6_nh_release(struct fib6_nh *fib6_nh);
492 void fib6_nh_release_dsts(struct fib6_nh *fib6_nh);
H A Dip6_route.h77 f6i->fib6_nh->fib_nh_gw_family; in rt6_qualify_for_ecmp()
314 struct fib6_nh *nha, *nhb; in rt6_duplicate_nexthop()
319 nha = a->fib6_nh; in rt6_duplicate_nexthop()
320 nhb = b->fib6_nh; in rt6_duplicate_nexthop()
/linux-6.15/net/ipv6/
H A Droute.c482 const struct fib6_nh *nh = sibling->fib6_nh; in fib6_select_path()
651 static void rt6_probe(struct fib6_nh *fib6_nh) in rt6_probe() argument
713 static inline void rt6_probe(struct fib6_nh *fib6_nh) in rt6_probe() argument
2009 struct fib6_nh *fib6_nh; in rt6_update_exception_stamp_rt() local
2029 fib6_nh = from->fib6_nh; in rt6_update_exception_stamp_rt()
3691 void fib6_nh_release(struct fib6_nh *fib6_nh) in fib6_nh_release() argument
3712 void fib6_nh_release_dsts(struct fib6_nh *fib6_nh) in fib6_nh_release_dsts() argument
3739 struct fib6_nh *fib6_nh; in ip6_route_info_create() local
3856 fib6_nh = rt->fib6_nh; in ip6_route_info_create()
5606 struct fib6_nh *nh = f6i->fib6_nh; in rt6_nlmsg_size()
[all …]
H A Dip6_fib.c153 sz += sizeof(struct fib6_nh); in fib6_info_alloc()
177 fib6_nh_release(f6i->fib6_nh); in fib6_info_destroy_rcu()
953 static void __fib6_drop_pcpu_from(struct fib6_nh *fib6_nh, in __fib6_drop_pcpu_from() argument
959 if (!fib6_nh->rt6i_pcpu) in __fib6_drop_pcpu_from()
1021 struct fib6_nh *fib6_nh; in fib6_drop_pcpu_from() local
1023 fib6_nh = f6i->fib6_nh; in fib6_drop_pcpu_from()
1024 __fib6_drop_pcpu_from(fib6_nh, f6i, table); in fib6_drop_pcpu_from()
2541 struct fib6_nh *fib6_nh = rt->fib6_nh; in ipv6_route_native_seq_show() local
2546 fib6_nh = nexthop_fib6_nh(rt->nh); in ipv6_route_native_seq_show()
2555 if (fib6_nh->fib_nh_gw_family) { in ipv6_route_native_seq_show()
[all …]
H A Daddrconf_core.c180 static int eafnosupport_fib6_nh_init(struct net *net, struct fib6_nh *fib6_nh, in eafnosupport_fib6_nh_init() argument
H A Dndisc.c1365 neigh = ip6_neigh_lookup(&rt->fib6_nh->fib_nh_gw6, in ndisc_router_discovery()
1366 rt->fib6_nh->fib_nh_dev, NULL, in ndisc_router_discovery()
1402 neigh = ip6_neigh_lookup(&rt->fib6_nh->fib_nh_gw6, in ndisc_router_discovery()
1403 rt->fib6_nh->fib_nh_dev, NULL, in ndisc_router_discovery()
H A Daddrconf.c2516 if (rt->fib6_nh->fib_nh_dev->ifindex != dev->ifindex) in addrconf_get_prefix_route()
2518 if (no_gw && rt->fib6_nh->fib_nh_gw_family) in addrconf_get_prefix_route()
6675 struct fib6_nh *nh = ifa->rt->fib6_nh; in addrconf_disable_policy_idev()
/linux-6.15/net/ipv4/
H A Dnexthop.c515 ipv6_stub->fib6_nh_release(&nhi->fib6_nh); in nexthop_free_single()
921 struct fib6_nh *fib6_nh; in nh_fill_node() local
980 fib6_nh = &nhi->fib6_nh; in nh_fill_node()
981 if (fib6_nh->fib_nh_gw_family && in nh_fill_node()
1041 if (nhi->fib6_nh.fib_nh_gw_family) in nh_nlmsg_size_single()
1407 return ipv6_good_nh(&nhi->fib6_nh); in nexthop_is_good_nh()
1515 err = cb(&nhi->fib6_nh, arg); in nexthop_for_each_fib6_nh()
1521 err = cb(&nhi->fib6_nh, arg); in nexthop_for_each_fib6_nh()
2834 struct fib6_nh *fib6_nh = &nhi->fib6_nh; in nh_create_ipv6() local
2857 ipv6_stub->fib6_nh_release(fib6_nh); in nh_create_ipv6()
[all …]
H A Dfib_semantics.c1089 struct fib6_nh fib6_nh = {}; in fib_check_nh_v6_gw() local
1092 err = ipv6_stub->fib6_nh_init(net, &fib6_nh, &cfg, GFP_KERNEL, extack); in fib_check_nh_v6_gw()
1094 nh->fib_nh_dev = fib6_nh.fib_nh_dev; in fib_check_nh_v6_gw()
1100 ipv6_stub->fib6_nh_release(&fib6_nh); in fib_check_nh_v6_gw()
/linux-6.15/drivers/net/ethernet/mellanox/mlxsw/
H A Dspectrum_router.c3506 struct fib6_nh *fib6_nh = mlxsw_sp_rt6->rt->fib6_nh; in mlxsw_sp_nexthop6_group_cmp() local
3510 ifindex = fib6_nh->fib_nh_dev->ifindex; in mlxsw_sp_nexthop6_group_cmp()
3511 weight = fib6_nh->fib_nh_weight; in mlxsw_sp_nexthop6_group_cmp()
3512 gw = &fib6_nh->fib_nh_gw6; in mlxsw_sp_nexthop6_group_cmp()
3579 struct fib6_nh *fib6_nh = mlxsw_sp_rt6->rt->fib6_nh; in mlxsw_sp_nexthop6_group_hash() local
4066 struct fib6_nh *fib6_nh = mlxsw_sp_rt6->rt->fib6_nh; in __mlxsw_sp_nexthop6_group_offload_refresh() local
4071 fib6_nh->fib_nh_flags |= RTNH_F_OFFLOAD; in __mlxsw_sp_nexthop6_group_offload_refresh()
5986 &rt->fib6_nh->fib_nh_gw6)) in mlxsw_sp_rt6_nexthop()
6935 struct fib6_nh *fib6_nh = mlxsw_sp_rt6->rt->fib6_nh; in mlxsw_sp_rt6_destroy() local
6968 return rt->fib6_nh->fib_nh_dev && in mlxsw_sp_nexthop6_ipip_type()
[all …]
/linux-6.15/drivers/net/ethernet/marvell/prestera/
H A Dprestera_router.c198 if (!fi->fib6_nh->nh_common.nhc_gw_family) in __prestera_fi6_is_direct()
332 return &fen6_info->rt->fib6_nh->nh_common; in prestera_kern_fib_info_nhc()
337 return &iter->fib6_nh->nh_common; in prestera_kern_fib_info_nhc()