Commit b21606a7 authored by Linas Vepstas's avatar Linas Vepstas Committed by Jeff Garzik

[PATCH] powerpc/cell spidernet incorrect offset

Bugfix -- the rx chain is in memory after the tx chain --
the offset being used was wrong, resulting in memory corruption
when the size of the rx and tx rings weren't exactly the same.
Signed-off-by: default avatarLinas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 98b9040c
...@@ -1628,8 +1628,10 @@ spider_net_open(struct net_device *netdev) ...@@ -1628,8 +1628,10 @@ spider_net_open(struct net_device *netdev)
if (spider_net_init_chain(card, &card->tx_chain, card->descr, if (spider_net_init_chain(card, &card->tx_chain, card->descr,
PCI_DMA_TODEVICE, card->tx_desc)) PCI_DMA_TODEVICE, card->tx_desc))
goto alloc_tx_failed; goto alloc_tx_failed;
/* rx_chain is after tx_chain, so offset is descr + tx_count */
if (spider_net_init_chain(card, &card->rx_chain, if (spider_net_init_chain(card, &card->rx_chain,
card->descr + card->rx_desc, card->descr + card->tx_desc,
PCI_DMA_FROMDEVICE, card->rx_desc)) PCI_DMA_FROMDEVICE, card->rx_desc))
goto alloc_rx_failed; goto alloc_rx_failed;
......
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