[dpdk-dev] [PATCH] net/e1000: fix checksum valid flags error

Wei Zhao wei.zhao1 at intel.com
Tue May 2 04:46:03 CEST 2017


This problem is caused by a missing set of E1000_RXCSUM_CRCOFL
in eth_igb_rx_init(), it should be set to enable SCTP packet
L4 checksum.If it is not set, the printf message in cksum fwd
about L4 SCTP cksum flag is error.

Fixes: d15fcf76c8b7 ("net/e1000: move to drivers/net/")

Signed-off-by: Wei Zhao <wei.zhao1 at intel.com>
---
 drivers/net/e1000/igb_rxtx.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/net/e1000/igb_rxtx.c b/drivers/net/e1000/igb_rxtx.c
index b3b601b..6c2749b 100644
--- a/drivers/net/e1000/igb_rxtx.c
+++ b/drivers/net/e1000/igb_rxtx.c
@@ -2402,10 +2402,11 @@ eth_igb_rx_init(struct rte_eth_dev *dev)
 
 	/* Enable both L3/L4 rx checksum offload */
 	if (dev->data->dev_conf.rxmode.hw_ip_checksum)
-		rxcsum |= (E1000_RXCSUM_IPOFL  | E1000_RXCSUM_TUOFL);
+		rxcsum |= (E1000_RXCSUM_IPOFL | E1000_RXCSUM_TUOFL |
+				E1000_RXCSUM_CRCOFL);
 	else
-		rxcsum &= ~(E1000_RXCSUM_IPOFL | E1000_RXCSUM_TUOFL);
-	E1000_WRITE_REG(hw, E1000_RXCSUM, rxcsum);
+		rxcsum &= ~(E1000_RXCSUM_IPOFL | E1000_RXCSUM_TUOFL |
+				E1000_RXCSUM_CRCOFL);
 
 	/* Setup the Receive Control Register. */
 	if (dev->data->dev_conf.rxmode.hw_strip_crc) {
-- 
2.9.3



More information about the dev mailing list