diff options
| -rw-r--r-- | drivers/net/hyperv/netvsc.c | 1 | ||||
| -rw-r--r-- | drivers/net/hyperv/netvsc_drv.c | 3 |
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c index b81bd37d3afb..ecbd81385e96 100644 --- a/drivers/net/hyperv/netvsc.c +++ b/drivers/net/hyperv/netvsc.c | |||
| @@ -870,6 +870,7 @@ int netvsc_send(struct hv_device *device, | |||
| 870 | (unsigned long)packet->send_completion_tid; | 870 | (unsigned long)packet->send_completion_tid; |
| 871 | 871 | ||
| 872 | packet->page_buf_cnt = 0; | 872 | packet->page_buf_cnt = 0; |
| 873 | packet->send_completion_tid = 0; | ||
| 873 | packet->send_buf_index = section_index; | 874 | packet->send_buf_index = section_index; |
| 874 | packet->total_data_buflen += msd_len; | 875 | packet->total_data_buflen += msd_len; |
| 875 | 876 | ||
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c index 0c998186039e..75beb89aac9c 100644 --- a/drivers/net/hyperv/netvsc_drv.c +++ b/drivers/net/hyperv/netvsc_drv.c | |||
| @@ -234,11 +234,10 @@ static void netvsc_xmit_completion(void *context) | |||
| 234 | struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context; | 234 | struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context; |
| 235 | struct sk_buff *skb = (struct sk_buff *) | 235 | struct sk_buff *skb = (struct sk_buff *) |
| 236 | (unsigned long)packet->send_completion_tid; | 236 | (unsigned long)packet->send_completion_tid; |
| 237 | u32 index = packet->send_buf_index; | ||
| 238 | 237 | ||
| 239 | kfree(packet); | 238 | kfree(packet); |
| 240 | 239 | ||
| 241 | if (skb && (index == NETVSC_INVALID_INDEX)) | 240 | if (skb) |
| 242 | dev_kfree_skb_any(skb); | 241 | dev_kfree_skb_any(skb); |
| 243 | } | 242 | } |
| 244 | 243 | ||
