Symbol: fib_nh
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
234
struct fib_nh *fib_nh,
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
247
if (mlx5_lag_pf(ldev, i)->netdev == fib_nh->fib_nh_dev)
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
267
struct fib_nh *fib_nh;
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
280
fib_nh = fib_work->fnh_info.fib_nh;
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
283
fib_work->fnh_info.fib_nh,
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
284
fib_nh->nh_parent);
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
285
fib_info_put(fib_work->fnh_info.fib_nh->nh_parent);
drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c
353
fib_info_hold(fib_work->fnh_info.fib_nh->nh_parent);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
3054
struct fib_nh *fib_nh;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4054
nh->key.fib_nh->fib_nh_flags |= RTNH_F_OFFLOAD;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4056
nh->key.fib_nh->fib_nh_flags &= ~RTNH_F_OFFLOAD;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4525
const struct fib_nh *fib_nh,
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4528
struct net_device *dev = fib_nh->fib_nh_dev;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4531
fib_nh->nh_parent->fib_type == RTN_UNICAST &&
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4611
struct fib_nh *fib_nh)
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4613
struct net_device *dev = fib_nh->fib_nh_dev;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4618
nh->key.fib_nh = fib_nh;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4620
nh->nh_weight = fib_nh->fib_nh_weight;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4624
memcpy(&nh->gw_addr, &fib_nh->fib_nh_gw4, sizeof(fib_nh->fib_nh_gw4));
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4643
fib_nh->fib_nh_flags & RTNH_F_LINKDOWN) {
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4673
unsigned long event, struct fib_nh *fib_nh)
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4678
key.fib_nh = fib_nh;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
4685
mlxsw_sp_nexthop_type_init(mlxsw_sp, nh, fib_nh->fib_nh_dev);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
5766
const struct fib_nh *nh = fib_info_nh(fi, 0);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
5789
struct fib_nh *fib_nh;
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
5792
fib_nh = fib_info_nh(nh_grp->ipv4.fi, i);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
5793
err = mlxsw_sp_nexthop4_init(mlxsw_sp, nh_grp, nh, fib_nh);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
7892
fib_work->fnh_info.fib_nh);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
7893
fib_info_put(fib_work->fnh_info.fib_nh->nh_parent);
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
8012
fib_info_hold(fib_work->fnh_info.fib_nh->nh_parent);
drivers/net/ethernet/rocker/rocker_ofdpa.c
2258
const struct fib_nh *nh;
drivers/net/ethernet/rocker/rocker_ofdpa.c
2712
struct fib_nh *nh;
drivers/net/ethernet/rocker/rocker_ofdpa.c
2735
struct fib_nh *nh;
drivers/net/ethernet/rocker/rocker_ofdpa.c
2763
struct fib_nh *nh;
include/net/ip_fib.h
162
struct fib_nh fib_nh[] __counted_by(fib_nhs);
include/net/ip_fib.h
241
struct fib_nh *fib_nh;
include/net/ip_fib.h
573
int fib_check_nh(struct net *net, struct fib_nh *nh, u32 table, u8 scope,
include/net/ip_fib.h
580
int fib_nh_init(struct net *net, struct fib_nh *fib_nh,
include/net/ip_fib.h
583
void fib_nh_release(struct net *net, struct fib_nh *fib_nh);
include/net/ip_fib.h
605
struct fib_nh *nh;
include/net/ip_fib.h
607
nh = container_of(nhc, struct fib_nh, nh_common);
include/net/nexthop.h
402
BUILD_BUG_ON(offsetof(struct fib_nh, nh_common) != 0);
include/net/nexthop.h
494
return &fi->fib_nh[nhsel].nh_common;
include/net/nexthop.h
498
static inline struct fib_nh *fib_info_nh(struct fib_info *fi, int nhsel)
include/net/nexthop.h
502
return &fi->fib_nh[nhsel];
include/net/nexthop.h
69
struct fib_nh fib_nh;
include/net/route.h
54
struct fib_nh;
net/ipv4/fib_semantics.c
1071
static int fib_check_nh_v6_gw(struct net *net, struct fib_nh *nh,
net/ipv4/fib_semantics.c
1140
static int fib_check_nh_v4_gw(struct net *net, struct fib_nh *nh, u32 table,
net/ipv4/fib_semantics.c
1234
static int fib_check_nh_nongw(struct net *net, struct fib_nh *nh,
net/ipv4/fib_semantics.c
1269
int fib_check_nh(struct net *net, struct fib_nh *nh, u32 table, u8 scope,
net/ipv4/fib_semantics.c
1287
struct fib_nh *nh;
net/ipv4/fib_semantics.c
1293
nh = container_of(nhc, struct fib_nh, nh_common);
net/ipv4/fib_semantics.c
1310
struct fib_nh *nh;
net/ipv4/fib_semantics.c
1312
nh = container_of(nhc, struct fib_nh, nh_common);
net/ipv4/fib_semantics.c
1398
fi = kzalloc_flex(*fi, fib_nh, nhs);
net/ipv4/fib_semantics.c
1438
err = fib_nh_init(net, fi->fib_nh, cfg, 1, extack);
net/ipv4/fib_semantics.c
1475
struct fib_nh *nh = fi->fib_nh;
net/ipv4/fib_semantics.c
1778
struct fib_nh *nh;
net/ipv4/fib_semantics.c
1780
nh = container_of(nhc, struct fib_nh, nh_common);
net/ipv4/fib_semantics.c
1838
static int call_fib_nh_notifiers(struct fib_nh *nh,
net/ipv4/fib_semantics.c
1843
.fib_nh = nh,
net/ipv4/fib_semantics.c
1908
struct fib_nh *nh;
net/ipv4/fib_semantics.c
1929
struct fib_nh *nh;
net/ipv4/fib_semantics.c
2077
struct fib_nh *nh;
net/ipv4/fib_semantics.c
211
void fib_nh_release(struct net *net, struct fib_nh *fib_nh)
net/ipv4/fib_semantics.c
2133
static bool fib_good_nh(const struct fib_nh *nh)
net/ipv4/fib_semantics.c
214
if (fib_nh->nh_tclassid)
net/ipv4/fib_semantics.c
217
fib_nh_common_release(&fib_nh->nh_common);
net/ipv4/fib_semantics.c
275
const struct fib_nh *onh;
net/ipv4/fib_semantics.c
478
struct fib_nh *nh;
net/ipv4/fib_semantics.c
59
int nhsel; const struct fib_nh *nh; \
net/ipv4/fib_semantics.c
60
for (nhsel = 0, nh = (fi)->fib_nh; \
net/ipv4/fib_semantics.c
642
int fib_nh_init(struct net *net, struct fib_nh *nh,
net/ipv4/fib_semantics.c
65
int nhsel; struct fib_nh *nexthop_nh; \
net/ipv4/fib_semantics.c
66
for (nhsel = 0, nexthop_nh = (struct fib_nh *)((fi)->fib_nh); \
net/ipv4/fib_semantics.c
717
struct fib_nh *nh;
net/ipv4/fib_semantics.c
75
int nhsel; const struct fib_nh *nh = (fi)->fib_nh; \
net/ipv4/fib_semantics.c
80
struct fib_nh *nexthop_nh = (struct fib_nh *)((fi)->fib_nh); \
net/ipv4/fib_semantics.c
877
const struct fib_nh *nh,
net/ipv4/fib_semantics.c
921
struct fib_nh *nh;
net/ipv4/nexthop.c
1047
if (nhi->fib_nh.fib_nh_gw_family)
net/ipv4/nexthop.c
1394
static bool ipv4_good_nh(const struct fib_nh *nh)
net/ipv4/nexthop.c
1417
return ipv4_good_nh(&nhi->fib_nh);
net/ipv4/nexthop.c
2875
struct fib_nh *fib_nh = &nhi->fib_nh;
net/ipv4/nexthop.c
2888
err = fib_nh_init(net, fib_nh, &fib_cfg, 1, extack);
net/ipv4/nexthop.c
2890
fib_nh_release(net, fib_nh);
net/ipv4/nexthop.c
2898
err = fib_check_nh(net, fib_nh, tb_id, 0, extack);
net/ipv4/nexthop.c
2900
nh->nh_flags = fib_nh->fib_nh_flags;
net/ipv4/nexthop.c
2901
fib_info_update_nhc_saddr(net, &fib_nh->nh_common,
net/ipv4/nexthop.c
2902
!fib_nh->fib_nh_scope ? 0 : fib_nh->fib_nh_scope - 1);
net/ipv4/nexthop.c
2904
fib_nh_release(net, fib_nh);
net/ipv4/nexthop.c
510
fib_nh_release(nh->net, &nhi->fib_nh);
net/ipv4/nexthop.c
919
struct fib_nh *fib_nh;
net/ipv4/nexthop.c
970
fib_nh = &nhi->fib_nh;
net/ipv4/nexthop.c
971
if (fib_nh->fib_nh_gw_family &&
net/ipv4/nexthop.c
972
nla_put_be32(skb, NHA_GATEWAY, fib_nh->fib_nh_gw4))
net/ipv4/route.c
1607
struct fib_nh *nh;
net/ipv4/route.c
1609
nh = container_of(nhc, struct fib_nh, nh_common);