[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1373546901-26741-1-git-send-email-dmitry@broadcom.com>
Date: Thu, 11 Jul 2013 15:48:21 +0300
From: "Dmitry Kravkov" <dmitry@...adcom.com>
To: davem@...emloft.net, netdev@...r.kernel.org
cc: eric.dumazet@...il.com, alexander.h.duyck@...el.com,
pshelar@...ira.com, xiyou.wangcong@...il.com, eilong@...adcom.com,
"Dmitry Kravkov" <dmitry@...adcom.com>
Subject: [PATCH net] bnx2x: fix tunneling CSUM calculation
Since commit c957d09ffda417f6c8e3d1f10e2b05228607d6d7
"bnx2x: Remove sparse and coccinelle warnings"
driver provided wrong partial csum for HW in tunneing
scenarios.
Reported-by: Eric Dumazet <eric.dumazet@...il.com>
CC: Alexander Duyck <alexander.h.duyck@...el.com>
CC: Pravin Shelar <pshelar@...ira.com>
CC: Cong Wang <xiyou.wangcong@...il.com>
Signed-off-by: Dmitry Kravkov <dmitry@...adcom.com>
---
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
index 3353efe..ee350bd 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
@@ -3543,9 +3543,9 @@ static void bnx2x_update_pbds_gso_enc(struct sk_buff *skb,
/* outer IP header info */
if (xmit_type & XMIT_CSUM_V4) {
struct iphdr *iph = ip_hdr(skb);
- u16 csum = (__force u16)(~iph->check) -
- (__force u16)iph->tot_len -
- (__force u16)iph->frag_off;
+ u32 csum = (__force u32)(~iph->check) -
+ (__force u32)iph->tot_len -
+ (__force u32)iph->frag_off;
pbd2->fw_ip_csum_wo_len_flags_frag =
bswab16(csum_fold((__force __wsum)csum));
--
1.8.1.4
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists