Lines Matching refs:peer
62 struct net_device __rcu *peer; member
151 struct net_device *peer = rtnl_dereference(priv->peer); in veth_get_ethtool_stats() local
154 data[0] = peer ? peer->ifindex : 0; in veth_get_ethtool_stats()
246 rcv = rcu_dereference(priv->peer); in veth_xmit()
336 struct net_device *peer; in veth_get_stats64() local
350 peer = rcu_dereference(priv->peer); in veth_get_stats64()
351 if (peer) { in veth_get_stats64()
352 tot->rx_dropped += veth_stats_tx(&tx, peer); in veth_get_stats64()
356 veth_stats_rx(&rx, peer); in veth_get_stats64()
406 rcv = rcu_dereference(priv->peer); in veth_xdp_xmit()
476 rcv = rcu_dereference(priv->peer); in veth_xdp_flush()
909 struct net_device *peer = rtnl_dereference(priv->peer); in veth_open() local
912 if (!peer) in veth_open()
921 if (peer->flags & IFF_UP) { in veth_open()
923 netif_carrier_on(peer); in veth_open()
932 struct net_device *peer = rtnl_dereference(priv->peer); in veth_close() local
935 if (peer) in veth_close()
936 netif_carrier_off(peer); in veth_close()
1014 struct net_device *peer; in veth_get_iflink() local
1018 peer = rcu_dereference(priv->peer); in veth_get_iflink()
1019 iflink = peer ? peer->ifindex : 0; in veth_get_iflink()
1029 struct net_device *peer; in veth_fix_features() local
1031 peer = rtnl_dereference(priv->peer); in veth_fix_features()
1032 if (peer) { in veth_fix_features()
1033 struct veth_priv *peer_priv = netdev_priv(peer); in veth_fix_features()
1045 struct net_device *peer; in veth_set_rx_headroom() local
1051 peer = rcu_dereference(priv->peer); in veth_set_rx_headroom()
1052 if (unlikely(!peer)) in veth_set_rx_headroom()
1055 peer_priv = netdev_priv(peer); in veth_set_rx_headroom()
1059 peer->needed_headroom = new_hr; in veth_set_rx_headroom()
1070 struct net_device *peer; in veth_xdp_set() local
1076 peer = rtnl_dereference(priv->peer); in veth_xdp_set()
1079 if (!peer) { in veth_xdp_set()
1086 peer->hard_header_len - in veth_xdp_set()
1088 if (peer->mtu > max_mtu) { in veth_xdp_set()
1094 if (dev->real_num_rx_queues < peer->real_num_tx_queues) { in veth_xdp_set()
1109 peer->hw_features &= ~NETIF_F_GSO_SOFTWARE; in veth_xdp_set()
1110 peer->max_mtu = max_mtu; in veth_xdp_set()
1119 if (peer) { in veth_xdp_set()
1120 peer->hw_features |= NETIF_F_GSO_SOFTWARE; in veth_xdp_set()
1121 peer->max_mtu = ETH_MAX_MTU; in veth_xdp_set()
1127 if ((!!old_prog ^ !!prog) && peer) in veth_xdp_set()
1128 netdev_update_features(peer); in veth_xdp_set()
1241 struct net_device *peer; in veth_newlink() local
1286 peer = rtnl_create_link(net, ifname, name_assign_type, in veth_newlink()
1288 if (IS_ERR(peer)) { in veth_newlink()
1290 return PTR_ERR(peer); in veth_newlink()
1294 eth_hw_addr_random(peer); in veth_newlink()
1297 peer->ifindex = ifmp->ifi_index; in veth_newlink()
1299 peer->gso_max_size = dev->gso_max_size; in veth_newlink()
1300 peer->gso_max_segs = dev->gso_max_segs; in veth_newlink()
1302 err = register_netdevice(peer); in veth_newlink()
1308 netif_carrier_off(peer); in veth_newlink()
1310 err = rtnl_configure_link(peer, ifmp); in veth_newlink()
1340 rcu_assign_pointer(priv->peer, peer); in veth_newlink()
1342 priv = netdev_priv(peer); in veth_newlink()
1343 rcu_assign_pointer(priv->peer, dev); in veth_newlink()
1350 unregister_netdevice(peer); in veth_newlink()
1354 free_netdev(peer); in veth_newlink()
1361 struct net_device *peer; in veth_dellink() local
1364 peer = rtnl_dereference(priv->peer); in veth_dellink()
1370 RCU_INIT_POINTER(priv->peer, NULL); in veth_dellink()
1373 if (peer) { in veth_dellink()
1374 priv = netdev_priv(peer); in veth_dellink()
1375 RCU_INIT_POINTER(priv->peer, NULL); in veth_dellink()
1376 unregister_netdevice_queue(peer, head); in veth_dellink()
1387 struct net_device *peer = rtnl_dereference(priv->peer); in veth_get_link_net() local
1389 return peer ? dev_net(peer) : dev_net(dev); in veth_get_link_net()