Commit 810d8ced authored by Vincenzo Maffione's avatar Vincenzo Maffione Committed by David S. Miller

drivers: net: xen-netfront: fix array initialization bug

This patch fixes the initialization of an array used in the TX
datapath that was mistakenly initialized together with the
RX datapath arrays. An out of range array access could happen
when RX and TX rings had different sizes.
Signed-off-by: default avatarVincenzo Maffione <v.maffione@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent dcfba949
...@@ -1291,13 +1291,13 @@ static struct net_device *xennet_create_dev(struct xenbus_device *dev) ...@@ -1291,13 +1291,13 @@ static struct net_device *xennet_create_dev(struct xenbus_device *dev)
for (i = 0; i < NET_TX_RING_SIZE; i++) { for (i = 0; i < NET_TX_RING_SIZE; i++) {
skb_entry_set_link(&np->tx_skbs[i], i+1); skb_entry_set_link(&np->tx_skbs[i], i+1);
np->grant_tx_ref[i] = GRANT_INVALID_REF; np->grant_tx_ref[i] = GRANT_INVALID_REF;
np->grant_tx_page[i] = NULL;
} }
/* Clear out rx_skbs */ /* Clear out rx_skbs */
for (i = 0; i < NET_RX_RING_SIZE; i++) { for (i = 0; i < NET_RX_RING_SIZE; i++) {
np->rx_skbs[i] = NULL; np->rx_skbs[i] = NULL;
np->grant_rx_ref[i] = GRANT_INVALID_REF; np->grant_rx_ref[i] = GRANT_INVALID_REF;
np->grant_tx_page[i] = NULL;
} }
/* A grant for every tx ring slot */ /* A grant for every tx ring slot */
......
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