fib_nh_dev
fib_dev = fib_info_nh(fen_info->fi, 0)->fib_nh_dev;
fib_dev = fib_info_nh(fi, i)->fib_nh_dev;
fib_dev = fib_info_nh(fi, i)->fib_nh_dev;
if (ldev->pf[i].netdev == fib_nh->fib_nh_dev)
ifindex = fib6_nh->fib_nh_dev->ifindex;
struct net_device *dev = fib6_nh->fib_nh_dev;
struct net_device *dev = fib_nh->fib_nh_dev;
struct net_device *dev = fib_nh->fib_nh_dev;
mlxsw_sp_nexthop_type_init(mlxsw_sp, nh, fib_nh->fib_nh_dev);
if (dev && dev == rt->fib6_nh->fib_nh_dev &&
return rt->fib6_nh->fib_nh_dev &&
mlxsw_sp_netdev_ipip_type(mlxsw_sp, rt->fib6_nh->fib_nh_dev, ret);
struct net_device *dev = rt->fib6_nh->fib_nh_dev;
nh_on_port = (nh->fib_nh_dev == ofdpa_port->dev);
ofdpa_port = ofdpa_port_dev_lower_find(nh->fib_nh_dev, rocker);
ofdpa_port = ofdpa_port_dev_lower_find(nh->fib_nh_dev, rocker);
ofdpa_port = ofdpa_port_dev_lower_find(nh->fib_nh_dev, rocker);
return nha->fib_nh_dev == nhb->fib_nh_dev &&
return fib6_nh->fib_nh_dev;
if (res->nh && res->nh->fib_nh_dev) {
strscpy(__entry->name, res->nh->fib_nh_dev->name, IFNAMSIZ);
dev = res.nh->fib_nh_dev;
nh->fib_nh_dev = fib6_nh.fib_nh_dev;
netdev_hold(nh->fib_nh_dev, &nh->fib_nh_dev_tracker,
nh->fib_nh_oif = nh->fib_nh_dev->ifindex;
nh->fib_nh_dev = dev;
nh->fib_nh_dev = dev = FIB_RES_DEV(res);
nh->fib_nh_dev = in_dev->dev;
netdev_hold(nh->fib_nh_dev, &nh->fib_nh_dev_tracker, GFP_ATOMIC);
if (!netif_carrier_ok(nh->fib_nh_dev))
saddr = inet_select_addr(nh->fib_nh_dev, nh->fib_nh_gw4, scope);
nh->fib_nh_dev = dev_get_by_index(net, nh->fib_nh_oif);
if (!nh->fib_nh_dev)
netdev_tracker_alloc(nh->fib_nh_dev, &nh->fib_nh_dev_tracker,
if (!nexthop_nh->fib_nh_dev)
head = fib_nh_head(nexthop_nh->fib_nh_dev);
bool ignore_link_down = ip_ignore_linkdown(nh->fib_nh_dev);
return call_fib4_notifiers(dev_net(nh->fib_nh_dev), event_type,
return call_fib4_notifiers(dev_net(nh->fib_nh_dev),
DEBUG_NET_WARN_ON_ONCE(nh->fib_nh_dev != dev);
DEBUG_NET_WARN_ON_ONCE(nh->fib_nh_dev != dev);
else if (nexthop_nh->fib_nh_dev == dev &&
nexthop_nh->fib_nh_dev == dev) {
DEBUG_NET_WARN_ON_ONCE(nh->fib_nh_dev != dev);
if (!nexthop_nh->fib_nh_dev ||
!(nexthop_nh->fib_nh_dev->flags & IFF_UP))
if (nexthop_nh->fib_nh_dev != dev ||
n = __ipv4_neigh_lookup_noref(nh->fib_nh_dev,
n = __ipv6_neigh_lookup_noref_stub(nh->fib_nh_dev,
if (!nexthop_nh->fib_nh_dev)
DEBUG_NET_WARN_ON_ONCE(nh->fib_nh_dev != dev);
if (ip_ignore_linkdown(nh->fib_nh_dev) &&
} else if (ip_ignore_linkdown(nexthop_nh->fib_nh_dev) &&
n = __ipv6_neigh_lookup_noref_stub(nh->fib_nh_dev, &nh->fib_nh_gw6);
n = __ipv4_neigh_lookup_noref(nh->fib_nh_dev,
if (rt->fib6_nh->fib_nh_dev->ifindex != dev->ifindex)
res->nh->fib_nh_dev);
dev = fib6_nh->fib_nh_dev;
rt->fib6_nh->fib_nh_dev, NULL,
rt->fib6_nh->fib_nh_dev, NULL,
struct net_device *dev = res->nh->fib_nh_dev;
const struct net_device *dev = nh->fib_nh_dev;
struct net_device *dev = res->nh->fib_nh_dev;
struct net_device *dev = nh->fib_nh_dev;
if (arg->dev != nh->fib_nh_dev ||
fl6->flowi6_oif != nh->fib_nh_dev->ifindex)
struct net_device *dev = nh->fib_nh_dev;
(dev && dev != res.nh->fib_nh_dev))
if (dev != res.nh->fib_nh_dev)
*_dev = dev = res.nh->fib_nh_dev;
fib6_nh->fib_nh_dev = dev;
if (fib6_is_reject(cfg->fc_flags, rt->fib6_nh->fib_nh_dev,
struct net_device *dev = fib6_nh->fib_nh_dev;
(!nh->fib_nh_dev ||
nh->fib_nh_dev->ifindex != cfg->fc_ifindex))
if (rt->fib6_nh->fib_nh_dev->ifindex != ifindex)
if (dev == nh->fib_nh_dev &&
!ipv6_chk_addr(net, addr, rt->fib6_nh->fib_nh_dev, 0)) {
ip6_ignore_linkdown(rt->fib6_nh->fib_nh_dev)))
rt->fib6_nh->fib_nh_dev == arg->dev) {
if (rt->fib6_nh->fib_nh_dev == dev)
if (iter->fib6_nh->fib_nh_dev == dev)
if (rt->fib6_nh->fib_nh_dev == down_dev ||
if (iter->fib6_nh->fib_nh_dev == down_dev ||
if (rt->fib6_nh->fib_nh_dev == dev)
if (iter->fib6_nh->fib_nh_dev == dev)
return rt->fib6_nh->fib_nh_dev == dev ? -1 : 0;
return rt->fib6_nh->fib_nh_dev == dev ? -1 : 0;
if (rt->fib6_nh->fib_nh_dev != dev ||
if (nh->fib_nh_dev == arg->dev) {
dev = nh->fib_nh_dev;
if (nh->fib_nh_dev == dev)
if (f6i->fib6_nh->fib_nh_dev == dev)
if (sibling->fib6_nh->fib_nh_dev == dev) {
net->ipv6.fib6_null_entry->fib6_nh->fib_nh_dev = dev;
dev = fib6_nh->fib_nh_dev;
init_net.ipv6.fib6_null_entry->fib6_nh->fib_nh_dev = init_net.loopback_dev;
neigh = __ipv6_neigh_lookup_noref(fib6_nh->fib_nh_dev,
if (!oif || nh->fib_nh_dev->ifindex == oif)
if (ip6_ignore_linkdown(nh->fib_nh_dev) &&
dev = fib6_nh->fib_nh_dev;