Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
staging: hv: fix the return status of netvsc_start_xmit()
Fix the return status, so the upper layer will retry if transmission
fails.

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>
  • Loading branch information
haiyangz authored and gregkh committed Sep 6, 2011
1 parent 8a5f9ed commit bf76937
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions drivers/staging/hv/netvsc_drv.c
Expand Up @@ -140,12 +140,12 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
(num_pages * sizeof(struct hv_page_buffer)) +
sizeof(struct rndis_filter_packet), GFP_ATOMIC);
if (!packet) {
/* out of memory, silently drop packet */
/* out of memory, drop packet */
netdev_err(net, "unable to allocate hv_netvsc_packet\n");

dev_kfree_skb(skb);
net->stats.tx_dropped++;
return NETDEV_TX_OK;
return NETDEV_TX_BUSY;
}

packet->extension = (void *)(unsigned long)packet +
Expand Down Expand Up @@ -194,7 +194,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
dev_kfree_skb_any(skb);
}

return NETDEV_TX_OK;
return ret ? NETDEV_TX_BUSY : NETDEV_TX_OK;
}

/*
Expand Down

0 comments on commit bf76937

Please sign in to comment.