mirror of https://gitee.com/openkylin/linux.git
netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp
Don't need to find netvsc_device structure, caller already had it. Also rearrange declarations. Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2d694d2abe
commit
9579083732
|
@ -243,18 +243,15 @@ static void netvsc_destroy_buf(struct hv_device *device)
|
|||
kfree(net_device->send_section_map);
|
||||
}
|
||||
|
||||
static int netvsc_init_buf(struct hv_device *device)
|
||||
static int netvsc_init_buf(struct hv_device *device,
|
||||
struct netvsc_device *net_device)
|
||||
{
|
||||
int ret = 0;
|
||||
struct netvsc_device *net_device;
|
||||
struct nvsp_message *init_packet;
|
||||
struct net_device *ndev;
|
||||
size_t map_words;
|
||||
int node;
|
||||
|
||||
net_device = get_outbound_net_device(device);
|
||||
if (!net_device)
|
||||
return -ENODEV;
|
||||
ndev = hv_get_drvdata(device);
|
||||
|
||||
node = cpu_to_node(device->channel->target_cpu);
|
||||
|
@ -285,9 +282,7 @@ static int netvsc_init_buf(struct hv_device *device)
|
|||
|
||||
/* Notify the NetVsp of the gpadl handle */
|
||||
init_packet = &net_device->channel_init_pkt;
|
||||
|
||||
memset(init_packet, 0, sizeof(struct nvsp_message));
|
||||
|
||||
init_packet->hdr.msg_type = NVSP_MSG1_TYPE_SEND_RECV_BUF;
|
||||
init_packet->msg.v1_msg.send_recv_buf.
|
||||
gpadl_handle = net_device->recv_buf_gpadl_handle;
|
||||
|
@ -486,20 +481,15 @@ static int negotiate_nvsp_ver(struct hv_device *device,
|
|||
return ret;
|
||||
}
|
||||
|
||||
static int netvsc_connect_vsp(struct hv_device *device)
|
||||
static int netvsc_connect_vsp(struct hv_device *device,
|
||||
struct netvsc_device *net_device)
|
||||
{
|
||||
int ret;
|
||||
struct netvsc_device *net_device;
|
||||
struct nvsp_message *init_packet;
|
||||
int ndis_version;
|
||||
const u32 ver_list[] = {
|
||||
NVSP_PROTOCOL_VERSION_1, NVSP_PROTOCOL_VERSION_2,
|
||||
NVSP_PROTOCOL_VERSION_4, NVSP_PROTOCOL_VERSION_5 };
|
||||
int i;
|
||||
|
||||
net_device = get_outbound_net_device(device);
|
||||
if (!net_device)
|
||||
return -ENODEV;
|
||||
NVSP_PROTOCOL_VERSION_4, NVSP_PROTOCOL_VERSION_5
|
||||
};
|
||||
struct nvsp_message *init_packet;
|
||||
int ndis_version, i, ret;
|
||||
|
||||
init_packet = &net_device->channel_init_pkt;
|
||||
|
||||
|
@ -549,7 +539,7 @@ static int netvsc_connect_vsp(struct hv_device *device)
|
|||
net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE;
|
||||
net_device->send_buf_size = NETVSC_SEND_BUFFER_SIZE;
|
||||
|
||||
ret = netvsc_init_buf(device);
|
||||
ret = netvsc_init_buf(device, net_device);
|
||||
|
||||
cleanup:
|
||||
return ret;
|
||||
|
@ -1349,7 +1339,7 @@ int netvsc_device_add(struct hv_device *device,
|
|||
rcu_assign_pointer(net_device_ctx->nvdev, net_device);
|
||||
|
||||
/* Connect with the NetVsp */
|
||||
ret = netvsc_connect_vsp(device);
|
||||
ret = netvsc_connect_vsp(device, net_device);
|
||||
if (ret != 0) {
|
||||
netdev_err(ndev,
|
||||
"unable to connect to NetVSP - %d\n", ret);
|
||||
|
@ -1368,4 +1358,5 @@ int netvsc_device_add(struct hv_device *device,
|
|||
free_netvsc_device(&net_device->rcu);
|
||||
|
||||
return ret;
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue