Lines Matching full:peer
20 struct net_device __rcu *peer; member
73 struct net_device *peer; in netkit_xmit() local
78 peer = rcu_dereference(nk->peer); in netkit_xmit()
79 if (unlikely(!peer || !(peer->flags & IFF_UP) || in netkit_xmit()
83 netkit_prep_forward(skb, !net_eq(dev_net(dev), dev_net(peer))); in netkit_xmit()
84 eth_skb_pkt_type(skb, peer); in netkit_xmit()
85 skb->dev = peer; in netkit_xmit()
96 dev_sw_netstats_rx_add(peer, len); in netkit_xmit()
122 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_open() local
124 if (!peer) in netkit_open()
126 if (peer->flags & IFF_UP) { in netkit_open()
128 netif_carrier_on(peer); in netkit_open()
136 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_close() local
139 if (peer) in netkit_close()
140 netif_carrier_off(peer); in netkit_close()
147 struct net_device *peer; in netkit_get_iflink() local
151 peer = rcu_dereference(nk->peer); in netkit_get_iflink()
152 if (peer) in netkit_get_iflink()
153 iflink = READ_ONCE(peer->ifindex); in netkit_get_iflink()
176 struct net_device *peer; in netkit_set_headroom() local
182 peer = rcu_dereference(nk->peer); in netkit_set_headroom()
183 if (unlikely(!peer)) in netkit_set_headroom()
186 nk2 = netkit_priv(peer); in netkit_set_headroom()
190 peer->needed_headroom = headroom; in netkit_set_headroom()
198 return rcu_dereference(netkit_priv(dev)->peer); in netkit_peer_dev()
281 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_get_link_net() local
283 return peer ? dev_net(peer) : dev_net(dev); in netkit_get_link_net()
340 struct net_device *peer; in netkit_new_link() local
396 peer = rtnl_create_link(net, ifname, ifname_assign_type, in netkit_new_link()
398 if (IS_ERR(peer)) { in netkit_new_link()
400 return PTR_ERR(peer); in netkit_new_link()
403 netif_inherit_tso_max(peer, dev); in netkit_new_link()
406 eth_hw_addr_random(peer); in netkit_new_link()
408 peer->ifindex = ifmp->ifi_index; in netkit_new_link()
410 nk = netkit_priv(peer); in netkit_new_link()
416 err = register_netdevice(peer); in netkit_new_link()
420 netif_carrier_off(peer); in netkit_new_link()
422 dev_change_flags(peer, peer->flags & ~IFF_NOARP, NULL); in netkit_new_link()
424 err = rtnl_configure_link(peer, NULL, 0, NULL); in netkit_new_link()
448 rcu_assign_pointer(netkit_priv(dev)->peer, peer); in netkit_new_link()
449 rcu_assign_pointer(netkit_priv(peer)->peer, dev); in netkit_new_link()
452 unregister_netdevice(peer); in netkit_new_link()
455 free_netdev(peer); in netkit_new_link()
513 dev = rcu_dereference_rtnl(nk->peer); in netkit_dev_fetch()
729 nkl->location == BPF_NETKIT_PRIMARY ? "primary" : "peer"); in netkit_link_fdinfo()
844 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_del_link() local
846 RCU_INIT_POINTER(nk->peer, NULL); in netkit_del_link()
848 if (peer) { in netkit_del_link()
849 nk = netkit_priv(peer); in netkit_del_link()
850 RCU_INIT_POINTER(nk->peer, NULL); in netkit_del_link()
851 unregister_netdevice_queue(peer, head); in netkit_del_link()
860 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_change_link() local
879 "netkit peer info cannot be changed after device creation"); in netkit_change_link()
896 if (peer) in netkit_change_link()
900 nk = netkit_priv(peer); in netkit_change_link()
919 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_fill_info() local
928 if (peer) { in netkit_fill_info()
929 nk = netkit_priv(peer); in netkit_fill_info()