Commit 4276372f authored by KY Srinivasan's avatar KY Srinivasan Committed by David S. Miller

Drivers: net: hyperv: Allocate memory for all possible per-pecket information

An outgoing packet can potentially need per-packet information for
all the offloads and VLAN tagging. Fix this issue.
Signed-off-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent eb707618
...@@ -319,7 +319,9 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net) ...@@ -319,7 +319,9 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)
packet = kzalloc(sizeof(struct hv_netvsc_packet) + packet = kzalloc(sizeof(struct hv_netvsc_packet) +
(num_data_pgs * sizeof(struct hv_page_buffer)) + (num_data_pgs * sizeof(struct hv_page_buffer)) +
sizeof(struct rndis_message) + sizeof(struct rndis_message) +
NDIS_VLAN_PPI_SIZE, GFP_ATOMIC); NDIS_VLAN_PPI_SIZE +
NDIS_CSUM_PPI_SIZE +
NDIS_LSO_PPI_SIZE, GFP_ATOMIC);
if (!packet) { if (!packet) {
/* out of memory, drop packet */ /* out of memory, drop packet */
netdev_err(net, "unable to allocate hv_netvsc_packet\n"); netdev_err(net, "unable to allocate hv_netvsc_packet\n");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment