vf_netdev         949 drivers/net/hyperv/hyperv_net.h 	struct net_device __rcu *vf_netdev;
vf_netdev          65 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev);
vf_netdev          68 drivers/net/hyperv/netvsc_drv.c 	if (!vf_netdev)
vf_netdev          73 drivers/net/hyperv/netvsc_drv.c 		dev_set_promiscuity(vf_netdev, inc);
vf_netdev          78 drivers/net/hyperv/netvsc_drv.c 		dev_set_allmulti(vf_netdev, inc);
vf_netdev          85 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev;
vf_netdev          89 drivers/net/hyperv/netvsc_drv.c 	vf_netdev = rcu_dereference(ndev_ctx->vf_netdev);
vf_netdev          90 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev) {
vf_netdev          91 drivers/net/hyperv/netvsc_drv.c 		dev_uc_sync(vf_netdev, net);
vf_netdev          92 drivers/net/hyperv/netvsc_drv.c 		dev_mc_sync(vf_netdev, net);
vf_netdev         113 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev);
vf_netdev         133 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev) {
vf_netdev         138 drivers/net/hyperv/netvsc_drv.c 		ret = dev_open(vf_netdev, NULL);
vf_netdev         142 drivers/net/hyperv/netvsc_drv.c 				    vf_netdev->name, ret);
vf_netdev         199 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev
vf_netdev         200 drivers/net/hyperv/netvsc_drv.c 		= rtnl_dereference(net_device_ctx->vf_netdev);
vf_netdev         220 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev)
vf_netdev         221 drivers/net/hyperv/netvsc_drv.c 		dev_close(vf_netdev);
vf_netdev         346 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev;
vf_netdev         350 drivers/net/hyperv/netvsc_drv.c 	vf_netdev = rcu_dereference(ndc->vf_netdev);
vf_netdev         351 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev) {
vf_netdev         352 drivers/net/hyperv/netvsc_drv.c 		const struct net_device_ops *vf_ops = vf_netdev->netdev_ops;
vf_netdev         355 drivers/net/hyperv/netvsc_drv.c 			txq = vf_ops->ndo_select_queue(vf_netdev, skb, sb_dev);
vf_netdev         357 drivers/net/hyperv/netvsc_drv.c 			txq = netdev_pick_tx(vf_netdev, skb, NULL);
vf_netdev         496 drivers/net/hyperv/netvsc_drv.c static int netvsc_vf_xmit(struct net_device *net, struct net_device *vf_netdev,
vf_netdev         503 drivers/net/hyperv/netvsc_drv.c 	skb->dev = vf_netdev;
vf_netdev         529 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev;
vf_netdev         537 drivers/net/hyperv/netvsc_drv.c 	vf_netdev = rcu_dereference_bh(net_device_ctx->vf_netdev);
vf_netdev         538 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev && netif_running(vf_netdev) &&
vf_netdev         540 drivers/net/hyperv/netvsc_drv.c 		return netvsc_vf_xmit(net, vf_netdev, skb);
vf_netdev        1112 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev = rtnl_dereference(ndevctx->vf_netdev);
vf_netdev        1127 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev) {
vf_netdev        1128 drivers/net/hyperv/netvsc_drv.c 		ret = dev_set_mtu(vf_netdev, mtu);
vf_netdev        1149 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev)
vf_netdev        1150 drivers/net/hyperv/netvsc_drv.c 		dev_set_mtu(vf_netdev, orig_mtu);
vf_netdev        1303 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev = rtnl_dereference(ndc->vf_netdev);
vf_netdev        1315 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev) {
vf_netdev        1316 drivers/net/hyperv/netvsc_drv.c 		err = dev_set_mac_address(vf_netdev, addr, NULL);
vf_netdev        1324 drivers/net/hyperv/netvsc_drv.c 	} else if (vf_netdev) {
vf_netdev        1327 drivers/net/hyperv/netvsc_drv.c 		dev_set_mac_address(vf_netdev, addr, NULL);
vf_netdev        1795 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev = rtnl_dereference(ndevctx->vf_netdev);
vf_netdev        1823 drivers/net/hyperv/netvsc_drv.c 	if (!vf_netdev)
vf_netdev        1826 drivers/net/hyperv/netvsc_drv.c 	vf_netdev->wanted_features = features;
vf_netdev        1827 drivers/net/hyperv/netvsc_drv.c 	netdev_update_features(vf_netdev);
vf_netdev        1991 drivers/net/hyperv/netvsc_drv.c static struct net_device *get_netvsc_byref(struct net_device *vf_netdev)
vf_netdev        1996 drivers/net/hyperv/netvsc_drv.c 	dev = netdev_master_upper_dev_get(vf_netdev);
vf_netdev        2035 drivers/net/hyperv/netvsc_drv.c static int netvsc_vf_join(struct net_device *vf_netdev,
vf_netdev        2041 drivers/net/hyperv/netvsc_drv.c 	ret = netdev_rx_handler_register(vf_netdev,
vf_netdev        2044 drivers/net/hyperv/netvsc_drv.c 		netdev_err(vf_netdev,
vf_netdev        2050 drivers/net/hyperv/netvsc_drv.c 	ret = netdev_master_upper_dev_link(vf_netdev, ndev,
vf_netdev        2053 drivers/net/hyperv/netvsc_drv.c 		netdev_err(vf_netdev,
vf_netdev        2060 drivers/net/hyperv/netvsc_drv.c 	vf_netdev->flags |= IFF_SLAVE;
vf_netdev        2064 drivers/net/hyperv/netvsc_drv.c 	call_netdevice_notifiers(NETDEV_JOIN, vf_netdev);
vf_netdev        2066 drivers/net/hyperv/netvsc_drv.c 	netdev_info(vf_netdev, "joined to %s\n", ndev->name);
vf_netdev        2070 drivers/net/hyperv/netvsc_drv.c 	netdev_rx_handler_unregister(vf_netdev);
vf_netdev        2076 drivers/net/hyperv/netvsc_drv.c 			      struct net_device *vf_netdev)
vf_netdev        2081 drivers/net/hyperv/netvsc_drv.c 	ret = dev_set_mtu(vf_netdev, ndev->mtu);
vf_netdev        2083 drivers/net/hyperv/netvsc_drv.c 		netdev_warn(vf_netdev,
vf_netdev        2087 drivers/net/hyperv/netvsc_drv.c 	dev_change_flags(vf_netdev, ndev->flags | IFF_SLAVE, NULL);
vf_netdev        2091 drivers/net/hyperv/netvsc_drv.c 	dev_uc_sync(vf_netdev, ndev);
vf_netdev        2092 drivers/net/hyperv/netvsc_drv.c 	dev_mc_sync(vf_netdev, ndev);
vf_netdev        2096 drivers/net/hyperv/netvsc_drv.c 		ret = dev_open(vf_netdev, NULL);
vf_netdev        2098 drivers/net/hyperv/netvsc_drv.c 			netdev_warn(vf_netdev,
vf_netdev        2111 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev;
vf_netdev        2118 drivers/net/hyperv/netvsc_drv.c 	vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev);
vf_netdev        2119 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev)
vf_netdev        2120 drivers/net/hyperv/netvsc_drv.c 		__netvsc_vf_setup(ndev, vf_netdev);
vf_netdev        2128 drivers/net/hyperv/netvsc_drv.c static struct net_device *get_netvsc_byslot(const struct net_device *vf_netdev)
vf_netdev        2130 drivers/net/hyperv/netvsc_drv.c 	struct device *parent = vf_netdev->dev.parent;
vf_netdev        2140 drivers/net/hyperv/netvsc_drv.c 		netdev_notice(vf_netdev, "no PCI slot information\n");
vf_netdev        2145 drivers/net/hyperv/netvsc_drv.c 		netdev_notice(vf_netdev, "Invalid vf serial:%s\n",
vf_netdev        2158 drivers/net/hyperv/netvsc_drv.c 	netdev_notice(vf_netdev,
vf_netdev        2163 drivers/net/hyperv/netvsc_drv.c static int netvsc_register_vf(struct net_device *vf_netdev)
vf_netdev        2170 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev->addr_len != ETH_ALEN)
vf_netdev        2173 drivers/net/hyperv/netvsc_drv.c 	ndev = get_netvsc_byslot(vf_netdev);
vf_netdev        2179 drivers/net/hyperv/netvsc_drv.c 	if (!netvsc_dev || rtnl_dereference(net_device_ctx->vf_netdev))
vf_netdev        2186 drivers/net/hyperv/netvsc_drv.c 	if (!net_eq(dev_net(ndev), dev_net(vf_netdev))) {
vf_netdev        2187 drivers/net/hyperv/netvsc_drv.c 		ret = dev_change_net_namespace(vf_netdev,
vf_netdev        2190 drivers/net/hyperv/netvsc_drv.c 			netdev_err(vf_netdev,
vf_netdev        2194 drivers/net/hyperv/netvsc_drv.c 			netdev_info(vf_netdev,
vf_netdev        2200 drivers/net/hyperv/netvsc_drv.c 	netdev_info(ndev, "VF registering: %s\n", vf_netdev->name);
vf_netdev        2202 drivers/net/hyperv/netvsc_drv.c 	if (netvsc_vf_join(vf_netdev, ndev) != 0)
vf_netdev        2205 drivers/net/hyperv/netvsc_drv.c 	dev_hold(vf_netdev);
vf_netdev        2206 drivers/net/hyperv/netvsc_drv.c 	rcu_assign_pointer(net_device_ctx->vf_netdev, vf_netdev);
vf_netdev        2208 drivers/net/hyperv/netvsc_drv.c 	vf_netdev->wanted_features = ndev->features;
vf_netdev        2209 drivers/net/hyperv/netvsc_drv.c 	netdev_update_features(vf_netdev);
vf_netdev        2215 drivers/net/hyperv/netvsc_drv.c static int netvsc_vf_changed(struct net_device *vf_netdev)
vf_netdev        2220 drivers/net/hyperv/netvsc_drv.c 	bool vf_is_up = netif_running(vf_netdev);
vf_netdev        2222 drivers/net/hyperv/netvsc_drv.c 	ndev = get_netvsc_byref(vf_netdev);
vf_netdev        2233 drivers/net/hyperv/netvsc_drv.c 		    vf_is_up ? "to" : "from", vf_netdev->name);
vf_netdev        2238 drivers/net/hyperv/netvsc_drv.c static int netvsc_unregister_vf(struct net_device *vf_netdev)
vf_netdev        2243 drivers/net/hyperv/netvsc_drv.c 	ndev = get_netvsc_byref(vf_netdev);
vf_netdev        2250 drivers/net/hyperv/netvsc_drv.c 	netdev_info(ndev, "VF unregistering: %s\n", vf_netdev->name);
vf_netdev        2252 drivers/net/hyperv/netvsc_drv.c 	netdev_rx_handler_unregister(vf_netdev);
vf_netdev        2253 drivers/net/hyperv/netvsc_drv.c 	netdev_upper_dev_unlink(vf_netdev, ndev);
vf_netdev        2254 drivers/net/hyperv/netvsc_drv.c 	RCU_INIT_POINTER(net_device_ctx->vf_netdev, NULL);
vf_netdev        2255 drivers/net/hyperv/netvsc_drv.c 	dev_put(vf_netdev);
vf_netdev        2385 drivers/net/hyperv/netvsc_drv.c 	struct net_device *vf_netdev, *net;
vf_netdev        2407 drivers/net/hyperv/netvsc_drv.c 	vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev);
vf_netdev        2408 drivers/net/hyperv/netvsc_drv.c 	if (vf_netdev)
vf_netdev        2409 drivers/net/hyperv/netvsc_drv.c 		netvsc_unregister_vf(vf_netdev);