summaryrefslogtreecommitdiff
path: root/target/linux/ramips
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2010-11-24 10:01:16 +0000
committerGabor Juhos <juhosg@openwrt.org>2010-11-24 10:01:16 +0000
commit624cfc5c9114dabe86ca85bbd01147c25845b128 (patch)
treeb3d192be6fd430729684e67bc36baba79568d5a9 /target/linux/ramips
parentf833e399f212a432d03750caa2f666db97b96624 (diff)
downloadmtk-20170518-624cfc5c9114dabe86ca85bbd01147c25845b128.zip
mtk-20170518-624cfc5c9114dabe86ca85bbd01147c25845b128.tar.gz
mtk-20170518-624cfc5c9114dabe86ca85bbd01147c25845b128.tar.bz2
ramips: DMA map the correct RX skb size
The skb_reserve call prior to DMA mapping the RX skb reduced the skb data len by 2. To not allow DMA to write behind the skb we should pass the correct skb data len to the device. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> SVN-Revision: 24123
Diffstat (limited to 'target/linux/ramips')
-rw-r--r--target/linux/ramips/files/drivers/net/ramips.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target/linux/ramips/files/drivers/net/ramips.c b/target/linux/ramips/files/drivers/net/ramips.c
index e3c4f13..1f3c35a 100644
--- a/target/linux/ramips/files/drivers/net/ramips.c
+++ b/target/linux/ramips/files/drivers/net/ramips.c
@@ -177,7 +177,7 @@ ramips_alloc_dma(struct raeth_priv *re)
skb_reserve(new_skb, 2);
re->rx[i].rxd1 = dma_map_single(NULL,
new_skb->data,
- MAX_RX_LENGTH + 2,
+ MAX_RX_LENGTH,
DMA_FROM_DEVICE);
re->rx[i].rxd2 |= RX_DMA_LSO;
re->rx_skb[i] = new_skb;
@@ -288,7 +288,7 @@ ramips_eth_rx_hw(unsigned long ptr)
skb_reserve(new_skb, 2);
priv->rx[rx].rxd1 = dma_map_single(NULL,
new_skb->data,
- MAX_RX_LENGTH + 2,
+ MAX_RX_LENGTH,
DMA_FROM_DEVICE);
}