diff options
author | Haiyang Zhang <haiyangz@microsoft.com> | 2011-12-15 13:45:17 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2012-01-04 16:13:05 -0800 |
commit | 4d447c9a6ebc0142d320f075c5bac6d202a79fd4 (patch) | |
tree | 6eb2a1a17e6de57dba5d350fc2821e2f48a8a484 /drivers/net/hyperv/netvsc.c | |
parent | f157e78de5923dfb209355f3005ce1b5d64f7998 (diff) |
net/hyperv: Add support for jumbo frame up to 64KB
Allow the user set the MTU up to 65536 for Linux guests running on
Hyper-V 2008 R2 or later.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/net/hyperv/netvsc.c')
-rw-r--r-- | drivers/net/hyperv/netvsc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c index 46828b4dd8a..8965b45ce5a 100644 --- a/drivers/net/hyperv/netvsc.c +++ b/drivers/net/hyperv/netvsc.c @@ -42,7 +42,7 @@ static struct netvsc_device *alloc_net_device(struct hv_device *device) if (!net_device) return NULL; - + net_device->start_remove = false; net_device->destroy = false; net_device->dev = device; net_device->ndev = ndev; @@ -299,7 +299,7 @@ static int negotiate_nvsp_ver(struct hv_device *device, /* NVSPv2 only: Send NDIS config */ memset(init_packet, 0, sizeof(struct nvsp_message)); init_packet->hdr.msg_type = NVSP_MSG2_TYPE_SEND_NDIS_CONFIG; - init_packet->msg.v2_msg.send_ndis_config.mtu = ETH_DATA_LEN; + init_packet->msg.v2_msg.send_ndis_config.mtu = net_device->ndev->mtu; ret = vmbus_sendpacket(device->channel, init_packet, sizeof(struct nvsp_message), @@ -464,7 +464,7 @@ static void netvsc_send_completion(struct hv_device *device, atomic_dec(&net_device->num_outstanding_sends); - if (netif_queue_stopped(ndev)) + if (netif_queue_stopped(ndev) && !net_device->start_remove) netif_wake_queue(ndev); } else { netdev_err(ndev, "Unknown send completion packet type- " |