diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-05-15 19:30:25 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-05-20 00:17:07 -0400 |
commit | 20e777a2a7dc9fad3d0b016c662c2fb60e6b20e7 (patch) | |
tree | ee1b651deee6f448e86eac0f8509a3610420d5ef | |
parent | e988bcdbe92eb61ea5bfe18aaba6986184118212 (diff) |
[PATCH] skge: bad checksums on big-endian platforms
Skge driver always causes bad checksums on big-endian.
The checksum in the receive control block was being swapped
when it doesn't need to be.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r-- | drivers/net/skge.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/skge.c b/drivers/net/skge.c index 63a6b3dfc095..0dd42470136d 100644 --- a/drivers/net/skge.c +++ b/drivers/net/skge.c | |||
@@ -2716,8 +2716,7 @@ static int skge_poll(struct net_device *dev, int *budget) | |||
2716 | if (control & BMU_OWN) | 2716 | if (control & BMU_OWN) |
2717 | break; | 2717 | break; |
2718 | 2718 | ||
2719 | skb = skge_rx_get(skge, e, control, rd->status, | 2719 | skb = skge_rx_get(skge, e, control, rd->status, rd->csum2); |
2720 | le16_to_cpu(rd->csum2)); | ||
2721 | if (likely(skb)) { | 2720 | if (likely(skb)) { |
2722 | dev->last_rx = jiffies; | 2721 | dev->last_rx = jiffies; |
2723 | netif_receive_skb(skb); | 2722 | netif_receive_skb(skb); |