fib_nh 114 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c struct fib_nh *fib_nh0, *fib_nh1; fib_nh 129 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c struct fib_nh *nh = fib_info_nh(fi, 0); fib_nh 166 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c struct fib_nh *fib_nh, fib_nh 177 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c int i = mlx5_lag_dev_get_netdev_idx(ldev, fib_nh->fib_nh_dev); fib_nh 194 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c struct fib_nh *fib_nh; fib_nh 209 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c fib_nh = fib_work->fnh_info.fib_nh; fib_nh 212 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c fib_work->fnh_info.fib_nh, fib_nh 213 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c fib_nh->nh_parent); fib_nh 214 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c fib_info_put(fib_work->fnh_info.fib_nh->nh_parent); fib_nh 294 drivers/net/ethernet/mellanox/mlx5/core/lag_mp.c fib_info_hold(fib_work->fnh_info.fib_nh->nh_parent); fib_nh 2673 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct fib_nh *fib_nh; fib_nh 3675 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c const struct fib_nh *fib_nh, fib_nh 3678 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct net_device *dev = fib_nh->fib_nh_dev; fib_nh 3681 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib_nh->nh_parent->fib_type == RTN_UNICAST && fib_nh 3702 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct fib_nh *fib_nh) fib_nh 3705 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct net_device *dev = fib_nh->fib_nh_dev; fib_nh 3747 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct fib_nh *fib_nh) fib_nh 3749 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct net_device *dev = fib_nh->fib_nh_dev; fib_nh 3754 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c nh->key.fib_nh = fib_nh; fib_nh 3756 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c nh->nh_weight = fib_nh->fib_nh_weight; fib_nh 3760 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c memcpy(&nh->gw_addr, &fib_nh->fib_nh_gw4, sizeof(fib_nh->fib_nh_gw4)); fib_nh 3773 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib_nh->fib_nh_flags & RTNH_F_LINKDOWN) fib_nh 3776 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c err = mlxsw_sp_nexthop4_type_init(mlxsw_sp, nh, fib_nh); fib_nh 3797 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c unsigned long event, struct fib_nh *fib_nh) fib_nh 3805 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c key.fib_nh = fib_nh; fib_nh 3812 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c mlxsw_sp_nexthop4_type_init(mlxsw_sp, nh, fib_nh); fib_nh 3872 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c const struct fib_nh *nh = fib_info_nh(fi, 0); fib_nh 3884 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c struct fib_nh *fib_nh; fib_nh 3900 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib_nh = fib_info_nh(fi, i); fib_nh 3901 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c err = mlxsw_sp_nexthop4_init(mlxsw_sp, nh_grp, nh, fib_nh); fib_nh 4036 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c nh_grp->nexthops->key.fib_nh->fib_nh_flags |= RTNH_F_OFFLOAD; fib_nh 4044 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c nh->key.fib_nh->fib_nh_flags |= RTNH_F_OFFLOAD; fib_nh 4046 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c nh->key.fib_nh->fib_nh_flags &= ~RTNH_F_OFFLOAD; fib_nh 4062 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c nh->key.fib_nh->fib_nh_flags &= ~RTNH_F_OFFLOAD; fib_nh 6019 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib_work->fnh_info.fib_nh); fib_nh 6020 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib_info_put(fib_work->fnh_info.fib_nh->nh_parent); fib_nh 6138 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c fib_info_hold(fib_work->fnh_info.fib_nh->nh_parent); fib_nh 2271 drivers/net/ethernet/rocker/rocker_ofdpa.c const struct fib_nh *nh; fib_nh 2737 drivers/net/ethernet/rocker/rocker_ofdpa.c struct fib_nh *nh; fib_nh 2760 drivers/net/ethernet/rocker/rocker_ofdpa.c struct fib_nh *nh; fib_nh 2788 drivers/net/ethernet/rocker/rocker_ofdpa.c struct fib_nh *nh; fib_nh 42 include/net/dn_fib.h struct dn_fib_nh fib_nh[0]; fib_nh 43 include/net/dn_fib.h #define dn_fib_dev fib_nh[0].nh_dev fib_nh 48 include/net/dn_fib.h #define DN_FIB_RES_NH(res) ((res).fi->fib_nh[(res).nh_sel]) fib_nh 156 include/net/ip_fib.h struct fib_nh fib_nh[0]; fib_nh 219 include/net/ip_fib.h struct fib_nh *fib_nh; fib_nh 447 include/net/ip_fib.h int fib_check_nh(struct net *net, struct fib_nh *nh, u32 table, u8 scope, fib_nh 453 include/net/ip_fib.h int fib_nh_init(struct net *net, struct fib_nh *fib_nh, fib_nh 456 include/net/ip_fib.h void fib_nh_release(struct net *net, struct fib_nh *fib_nh); fib_nh 474 include/net/ip_fib.h struct fib_nh *nh; fib_nh 476 include/net/ip_fib.h nh = container_of(nhc, struct fib_nh, nh_common); fib_nh 58 include/net/nexthop.h struct fib_nh fib_nh; fib_nh 218 include/net/nexthop.h BUILD_BUG_ON(offsetof(struct fib_nh, nh_common) != 0); fib_nh 277 include/net/nexthop.h return &fi->fib_nh[nhsel].nh_common; fib_nh 281 include/net/nexthop.h static inline struct fib_nh *fib_info_nh(struct fib_info *fi, int nhsel) fib_nh 285 include/net/nexthop.h return &fi->fib_nh[nhsel]; fib_nh 46 include/net/route.h struct fib_nh; fib_nh 54 net/decnet/dn_fib.c for(nhsel = 0, nh = (fi)->fib_nh; nhsel < (fi)->fib_nhs; nh++, nhsel++) fib_nh 57 net/decnet/dn_fib.c for(nhsel = 0, nh = (struct dn_fib_nh *)((fi)->fib_nh); nhsel < (fi)->fib_nhs; nh++, nhsel++) fib_nh 120 net/decnet/dn_fib.c const struct dn_fib_nh *onh = ofi->fib_nh; fib_nh 285 net/decnet/dn_fib.c fi = kzalloc(struct_size(fi, fib_nh, nhs), GFP_KERNEL); fib_nh 322 net/decnet/dn_fib.c fi->fib_nh->nh_oif != nla_get_u32(attrs[RTA_OIF])) fib_nh 326 net/decnet/dn_fib.c fi->fib_nh->nh_gw != nla_get_le16(attrs[RTA_GATEWAY])) fib_nh 329 net/decnet/dn_fib.c struct dn_fib_nh *nh = fi->fib_nh; fib_nh 345 net/decnet/dn_fib.c fi->fib_nh->nh_gw = nla_get_le16(attrs[RTA_GATEWAY]); fib_nh 360 net/decnet/dn_fib.c struct dn_fib_nh *nh = fi->fib_nh; fib_nh 366 net/decnet/dn_fib.c nh->nh_dev = dev_get_by_index(&init_net, fi->fib_nh->nh_oif); fib_nh 944 net/decnet/dn_route.c return (daddr&~mask)|res->fi->fib_nh->nh_gw; fib_nh 65 net/decnet/dn_table.c for(nhsel = 0, nh = (fi)->fib_nh; nhsel < (fi)->fib_nhs; nh++, nhsel++) fib_nh 239 net/decnet/dn_table.c if ((!attrs[RTA_OIF] || nla_get_u32(attrs[RTA_OIF]) == fi->fib_nh->nh_oif) && fib_nh 240 net/decnet/dn_table.c (!attrs[RTA_GATEWAY] || nla_get_le16(attrs[RTA_GATEWAY]) != fi->fib_nh->nh_gw)) fib_nh 338 net/decnet/dn_table.c if (fi->fib_nh->nh_gw && fib_nh 339 net/decnet/dn_table.c nla_put_le16(skb, RTA_GATEWAY, fi->fib_nh->nh_gw) < 0) fib_nh 342 net/decnet/dn_table.c if (fi->fib_nh->nh_oif && fib_nh 343 net/decnet/dn_table.c nla_put_u32(skb, RTA_OIF, fi->fib_nh->nh_oif) < 0) fib_nh 66 net/ipv4/fib_semantics.c int nhsel; const struct fib_nh *nh; \ fib_nh 67 net/ipv4/fib_semantics.c for (nhsel = 0, nh = (fi)->fib_nh; \ fib_nh 72 net/ipv4/fib_semantics.c int nhsel; struct fib_nh *nexthop_nh; \ fib_nh 73 net/ipv4/fib_semantics.c for (nhsel = 0, nexthop_nh = (struct fib_nh *)((fi)->fib_nh); \ fib_nh 82 net/ipv4/fib_semantics.c int nhsel; const struct fib_nh *nh = (fi)->fib_nh; \ fib_nh 87 net/ipv4/fib_semantics.c struct fib_nh *nexthop_nh = (struct fib_nh *)((fi)->fib_nh); \ fib_nh 221 net/ipv4/fib_semantics.c void fib_nh_release(struct net *net, struct fib_nh *fib_nh) fib_nh 224 net/ipv4/fib_semantics.c if (fib_nh->nh_tclassid) fib_nh 227 net/ipv4/fib_semantics.c fib_nh_common_release(&fib_nh->nh_common); fib_nh 284 net/ipv4/fib_semantics.c const struct fib_nh *onh; fib_nh 434 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 602 net/ipv4/fib_semantics.c int fib_nh_init(struct net *net, struct fib_nh *nh, fib_nh 664 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 812 net/ipv4/fib_semantics.c const struct fib_nh *nh, fib_nh 850 net/ipv4/fib_semantics.c struct fib_nh *nh = fib_info_nh(fi, 0); fib_nh 986 net/ipv4/fib_semantics.c static int fib_check_nh_v6_gw(struct net *net, struct fib_nh *nh, fib_nh 1054 net/ipv4/fib_semantics.c static int fib_check_nh_v4_gw(struct net *net, struct fib_nh *nh, u32 table, fib_nh 1148 net/ipv4/fib_semantics.c static int fib_check_nh_nongw(struct net *net, struct fib_nh *nh, fib_nh 1183 net/ipv4/fib_semantics.c int fib_check_nh(struct net *net, struct fib_nh *nh, u32 table, u8 scope, fib_nh 1283 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 1288 net/ipv4/fib_semantics.c nh = container_of(nhc, struct fib_nh, nh_common); fib_nh 1303 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 1305 net/ipv4/fib_semantics.c nh = container_of(nhc, struct fib_nh, nh_common); fib_nh 1409 net/ipv4/fib_semantics.c fi = kzalloc(struct_size(fi, fib_nh, nhs), GFP_KERNEL); fib_nh 1448 net/ipv4/fib_semantics.c err = fib_nh_init(net, fi->fib_nh, cfg, 1, extack); fib_nh 1485 net/ipv4/fib_semantics.c struct fib_nh *nh = fi->fib_nh; fib_nh 1785 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 1787 net/ipv4/fib_semantics.c nh = container_of(nhc, struct fib_nh, nh_common); fib_nh 1836 net/ipv4/fib_semantics.c static int call_fib_nh_notifiers(struct fib_nh *nh, fib_nh 1841 net/ipv4/fib_semantics.c .fib_nh = nh, fib_nh 1906 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 1929 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 2076 net/ipv4/fib_semantics.c struct fib_nh *nh; fib_nh 2132 net/ipv4/fib_semantics.c static bool fib_good_nh(const struct fib_nh *nh) fib_nh 87 net/ipv4/nexthop.c fib_nh_release(nh->net, &nhi->fib_nh); fib_nh 219 net/ipv4/nexthop.c struct fib_nh *fib_nh; fib_nh 263 net/ipv4/nexthop.c fib_nh = &nhi->fib_nh; fib_nh 264 net/ipv4/nexthop.c if (fib_nh->fib_nh_gw_family && fib_nh 265 net/ipv4/nexthop.c nla_put_u32(skb, NHA_GATEWAY, fib_nh->fib_nh_gw4)) fib_nh 312 net/ipv4/nexthop.c if (nhi->fib_nh.fib_nh_gw_family) fib_nh 473 net/ipv4/nexthop.c static bool ipv4_good_nh(const struct fib_nh *nh) fib_nh 513 net/ipv4/nexthop.c if (ipv4_good_nh(&nhi->fib_nh)) fib_nh 1171 net/ipv4/nexthop.c struct fib_nh *fib_nh = &nhi->fib_nh; fib_nh 1183 net/ipv4/nexthop.c err = fib_nh_init(net, fib_nh, &fib_cfg, 1, extack); fib_nh 1185 net/ipv4/nexthop.c fib_nh_release(net, fib_nh); fib_nh 1190 net/ipv4/nexthop.c err = fib_check_nh(net, fib_nh, tb_id, 0, extack); fib_nh 1192 net/ipv4/nexthop.c nh->nh_flags = fib_nh->fib_nh_flags; fib_nh 1193 net/ipv4/nexthop.c fib_info_update_nhc_saddr(net, &fib_nh->nh_common, fib_nh 1194 net/ipv4/nexthop.c fib_nh->fib_nh_scope); fib_nh 1196 net/ipv4/nexthop.c fib_nh_release(net, fib_nh); fib_nh 1585 net/ipv4/route.c struct fib_nh *nh; fib_nh 1587 net/ipv4/route.c nh = container_of(nhc, struct fib_nh, nh_common);