Lines Matching refs:nvdev

37 	struct netvsc_device *nv_dev = rtnl_dereference(net_device_ctx->nvdev);
63 struct netvsc_device *nvdev =
74 rdev = nvdev->extension;
76 ret = rndis_set_subchannel(rdev->ndev, nvdev, NULL);
81 for (i = 1; i < nvdev->num_chn; i++)
82 netif_napi_del(&nvdev->chan_table[i].napi);
84 nvdev->max_chn = 1;
85 nvdev->num_chn = 1;
116 struct netvsc_device *nvdev
120 kfree(nvdev->extension);
121 vfree(nvdev->recv_buf);
122 vfree(nvdev->send_buf);
123 kfree(nvdev->send_section_map);
126 xdp_rxq_info_unreg(&nvdev->chan_table[i].xdp_rxq);
127 vfree(nvdev->chan_table[i].mrc.slots);
130 kfree(nvdev);
133 static void free_netvsc_device_rcu(struct netvsc_device *nvdev)
135 call_rcu(&nvdev->rcu, free_netvsc_device);
637 = rtnl_dereference(net_device_ctx->nvdev);
652 RCU_INIT_POINTER(net_device_ctx->nvdev, NULL);
969 = rcu_dereference_bh(ndev_ctx->nvdev);
1088 struct netvsc_device *nvdev,
1115 if (++mrc->first == nvdev->recv_completion_cnt)
1120 if (unlikely(nvdev->destroy))
1121 wake_up(&nvdev->wait_drain);
1127 static void recv_comp_slot_avail(const struct netvsc_device *nvdev,
1131 u32 count = nvdev->recv_completion_cnt;
1143 struct netvsc_device *nvdev, u16 q_idx,
1146 struct netvsc_channel *nvchan = &nvdev->chan_table[q_idx];
1151 recv_comp_slot_avail(nvdev, mrc, &filled, &avail);
1154 send_recv_completions(ndev, nvdev, nvchan);
1155 recv_comp_slot_avail(nvdev, mrc, &filled, &avail);
1168 if (++mrc->next == nvdev->recv_completion_cnt)
1555 /* Writing nvdev pointer unlocks netvsc_send(), make sure chn_table is
1558 rcu_assign_pointer(net_device_ctx->nvdev, net_device);
1563 RCU_INIT_POINTER(net_device_ctx->nvdev, NULL);