Lines Matching full:peer
20 struct net_device __rcu *peer; member
85 struct net_device *peer; in netkit_xmit() local
90 peer = rcu_dereference(nk->peer); in netkit_xmit()
91 if (unlikely(!peer || !(peer->flags & IFF_UP) || in netkit_xmit()
95 netkit_prep_forward(skb, !net_eq(dev_net(dev), dev_net(peer)), in netkit_xmit()
97 eth_skb_pkt_type(skb, peer); in netkit_xmit()
98 skb->dev = peer; in netkit_xmit()
109 dev_sw_netstats_rx_add(peer, len); in netkit_xmit()
135 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_open() local
137 if (!peer) in netkit_open()
139 if (peer->flags & IFF_UP) { in netkit_open()
141 netif_carrier_on(peer); in netkit_open()
149 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_close() local
152 if (peer) in netkit_close()
153 netif_carrier_off(peer); in netkit_close()
160 struct net_device *peer; in netkit_get_iflink() local
164 peer = rcu_dereference(nk->peer); in netkit_get_iflink()
165 if (peer) in netkit_get_iflink()
166 iflink = READ_ONCE(peer->ifindex); in netkit_get_iflink()
189 struct net_device *peer; in netkit_set_headroom() local
195 peer = rcu_dereference(nk->peer); in netkit_set_headroom()
196 if (unlikely(!peer)) in netkit_set_headroom()
199 nk2 = netkit_priv(peer); in netkit_set_headroom()
203 peer->needed_headroom = headroom; in netkit_set_headroom()
211 return rcu_dereference(netkit_priv(dev)->peer); in netkit_peer_dev()
294 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_get_link_net() local
296 return peer ? dev_net(peer) : dev_net(dev); in netkit_get_link_net()
345 struct net_device *peer; in netkit_new_link() local
395 peer = rtnl_create_link(peer_net, ifname, ifname_assign_type, in netkit_new_link()
397 if (IS_ERR(peer)) in netkit_new_link()
398 return PTR_ERR(peer); in netkit_new_link()
400 netif_inherit_tso_max(peer, dev); in netkit_new_link()
402 peer->needed_headroom = headroom; in netkit_new_link()
406 peer->needed_tailroom = tailroom; in netkit_new_link()
411 eth_hw_addr_random(peer); in netkit_new_link()
413 peer->ifindex = ifmp->ifi_index; in netkit_new_link()
415 nk = netkit_priv(peer); in netkit_new_link()
423 err = register_netdevice(peer); in netkit_new_link()
426 netif_carrier_off(peer); in netkit_new_link()
428 dev_change_flags(peer, peer->flags & ~IFF_NOARP, NULL); in netkit_new_link()
430 err = rtnl_configure_link(peer, NULL, 0, NULL); in netkit_new_link()
456 rcu_assign_pointer(netkit_priv(dev)->peer, peer); in netkit_new_link()
457 rcu_assign_pointer(netkit_priv(peer)->peer, dev); in netkit_new_link()
460 unregister_netdevice(peer); in netkit_new_link()
463 free_netdev(peer); in netkit_new_link()
521 dev = rcu_dereference_rtnl(nk->peer); in netkit_dev_fetch()
737 nkl->location == BPF_NETKIT_PRIMARY ? "primary" : "peer"); in netkit_link_fdinfo()
852 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_del_link() local
854 RCU_INIT_POINTER(nk->peer, NULL); in netkit_del_link()
856 if (peer) { in netkit_del_link()
857 nk = netkit_priv(peer); in netkit_del_link()
858 RCU_INIT_POINTER(nk->peer, NULL); in netkit_del_link()
859 unregister_netdevice_queue(peer, head); in netkit_del_link()
868 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_change_link() local
878 { IFLA_NETKIT_PEER_SCRUB, "peer scrubbing" }, in netkit_change_link()
879 { IFLA_NETKIT_PEER_INFO, "peer info" }, in netkit_change_link()
913 if (peer) in netkit_change_link()
917 nk = netkit_priv(peer); in netkit_change_link()
940 struct net_device *peer = rtnl_dereference(nk->peer); in netkit_fill_info() local
955 if (peer) { in netkit_fill_info()
956 nk = netkit_priv(peer); in netkit_fill_info()