Lines Matching refs:peer
20 struct net_device __rcu *peer; member
84 struct net_device *peer; in netkit_xmit() local
89 peer = rcu_dereference(nk->peer); in netkit_xmit()
90 if (unlikely(!peer || !(peer->flags & IFF_UP) || in netkit_xmit()
94 netkit_prep_forward(skb, !net_eq(dev_net(dev), dev_net(peer)), in netkit_xmit()
96 eth_skb_pkt_type(skb, peer); in netkit_xmit()
97 skb->dev = peer; in netkit_xmit()
108 dev_sw_netstats_rx_add(peer, len); in netkit_xmit()
134 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_open() local
136 if (!peer) in netkit_open()
138 if (peer->flags & IFF_UP) { in netkit_open()
140 netif_carrier_on(peer); in netkit_open()
148 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_close() local
151 if (peer) in netkit_close()
152 netif_carrier_off(peer); in netkit_close()
159 struct net_device *peer; in netkit_get_iflink() local
163 peer = rcu_dereference(nk->peer); in netkit_get_iflink()
164 if (peer) in netkit_get_iflink()
165 iflink = READ_ONCE(peer->ifindex); in netkit_get_iflink()
188 struct net_device *peer; in netkit_set_headroom() local
194 peer = rcu_dereference(nk->peer); in netkit_set_headroom()
195 if (unlikely(!peer)) in netkit_set_headroom()
198 nk2 = netkit_priv(peer); in netkit_set_headroom()
202 peer->needed_headroom = headroom; in netkit_set_headroom()
210 return rcu_dereference(netkit_priv(dev)->peer); in netkit_peer_dev()
293 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_get_link_net() local
295 return peer ? dev_net(peer) : dev_net(dev); in netkit_get_link_net()
344 struct net_device *peer; in netkit_new_link() local
394 peer = rtnl_create_link(peer_net, ifname, ifname_assign_type, in netkit_new_link()
396 if (IS_ERR(peer)) in netkit_new_link()
397 return PTR_ERR(peer); in netkit_new_link()
399 netif_inherit_tso_max(peer, dev); in netkit_new_link()
401 peer->needed_headroom = headroom; in netkit_new_link()
405 peer->needed_tailroom = tailroom; in netkit_new_link()
410 eth_hw_addr_random(peer); in netkit_new_link()
412 peer->ifindex = ifmp->ifi_index; in netkit_new_link()
414 nk = netkit_priv(peer); in netkit_new_link()
422 err = register_netdevice(peer); in netkit_new_link()
425 netif_carrier_off(peer); in netkit_new_link()
427 dev_change_flags(peer, peer->flags & ~IFF_NOARP, NULL); in netkit_new_link()
429 err = rtnl_configure_link(peer, NULL, 0, NULL); in netkit_new_link()
455 rcu_assign_pointer(netkit_priv(dev)->peer, peer); in netkit_new_link()
456 rcu_assign_pointer(netkit_priv(peer)->peer, dev); in netkit_new_link()
459 unregister_netdevice(peer); in netkit_new_link()
462 free_netdev(peer); in netkit_new_link()
520 dev = rcu_dereference_rtnl(nk->peer); in netkit_dev_fetch()
850 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_del_link() local
852 RCU_INIT_POINTER(nk->peer, NULL); in netkit_del_link()
854 if (peer) { in netkit_del_link()
855 nk = netkit_priv(peer); in netkit_del_link()
856 RCU_INIT_POINTER(nk->peer, NULL); in netkit_del_link()
857 unregister_netdevice_queue(peer, head); in netkit_del_link()
866 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_change_link() local
911 if (peer) in netkit_change_link()
915 nk = netkit_priv(peer); in netkit_change_link()
938 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_fill_info() local
953 if (peer) { in netkit_fill_info()
954 nk = netkit_priv(peer); in netkit_fill_info()