aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ll_temac_main.c
diff options
context:
space:
mode:
authorMichał Mirosław <mirq-linux@rere.qmqm.pl>2010-12-14 10:24:08 -0500
committerDavid S. Miller <davem@davemloft.net>2010-12-16 17:43:15 -0500
commit0d0b16727f24f8258eeb33818347ca0f4557f982 (patch)
treee89fec837700b02aff0d08de1c5cbae3ff5060a8 /drivers/net/ll_temac_main.c
parent55508d601dab7df5cbcc7a63f4be8620eface204 (diff)
net: Fix drivers advertising HW_CSUM feature to use csum_start
Some drivers are using skb_transport_offset(skb) instead of skb->csum_start for NETIF_F_HW_CSUM offload. This does not matter now, but if someone implements checksumming of encapsulated packets then this will break silently. TSO output paths are left as they are, since they are for IP+TCP only (might be worth converting though). Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ll_temac_main.c')
-rw-r--r--drivers/net/ll_temac_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ll_temac_main.c b/drivers/net/ll_temac_main.c
index 9f8e7027b0b3..e2c2a7202dba 100644
--- a/drivers/net/ll_temac_main.c
+++ b/drivers/net/ll_temac_main.c
@@ -692,7 +692,7 @@ static int temac_start_xmit(struct sk_buff *skb, struct net_device *ndev)
692 692
693 cur_p->app0 = 0; 693 cur_p->app0 = 0;
694 if (skb->ip_summed == CHECKSUM_PARTIAL) { 694 if (skb->ip_summed == CHECKSUM_PARTIAL) {
695 unsigned int csum_start_off = skb_transport_offset(skb); 695 unsigned int csum_start_off = skb_checksum_start_offset(skb);
696 unsigned int csum_index_off = csum_start_off + skb->csum_offset; 696 unsigned int csum_index_off = csum_start_off + skb->csum_offset;
697 697
698 cur_p->app0 |= 1; /* TX Checksum Enabled */ 698 cur_p->app0 |= 1; /* TX Checksum Enabled */