aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/hyperv/netvsc.c1
-rw-r--r--drivers/net/hyperv/netvsc_drv.c3
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