git: 95aced446a8c - stable/13 - ixgbe: Change if condition for RSS and rxcsum
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 02 Jun 2023 19:30:13 UTC
The branch stable/13 has been updated by erj:
URL: https://cgit.FreeBSD.org/src/commit/?id=95aced446a8c6ada94a5a9dead6e2c68ce48ecb3
commit 95aced446a8c6ada94a5a9dead6e2c68ce48ecb3
Author: Przemyslaw Lewandowski <przemyslawx.lewandowski@intel.com>
AuthorDate: 2023-05-24 23:24:54 +0000
Commit: Eric Joyner <erj@FreeBSD.org>
CommitDate: 2023-06-02 19:27:45 +0000
ixgbe: Change if condition for RSS and rxcsum
This patch fixes TCP connection hangs for 1 rxq and 1 txq without rxcsum
enabled. Documentation for 10G cards and other drivers suggest enabling
rxcsum for RSS and disabling otherwise. When PCSD bit is not set then
fragment checksum and IP identification are reported in the rx
descriptor. When PCSD bit is set then RSS hash value is reported in the
rx descriptor. RSS and RX IPP checksum are mutually exclusive.
Signed-off-by: Eric Joyner <erj@FreeBSD.org>
PR: 268910
Reviewed by: erj@
Tested by: jeffrey.e.pieper@intel.com
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D38621
(cherry picked from commit 156424fce98a0240c702da0a918b027d1979bfdb)
---
sys/dev/ixgbe/if_ix.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c
index c985e89b4cca..54bc16e73763 100644
--- a/sys/dev/ixgbe/if_ix.c
+++ b/sys/dev/ixgbe/if_ix.c
@@ -755,7 +755,7 @@ ixgbe_initialize_receive_units(if_ctx_t ctx)
ixgbe_initialize_rss_mapping(sc);
- if (sc->num_rx_queues > 1) {
+ if (sc->feat_en & IXGBE_FEATURE_RSS) {
/* RSS and RX IPP Checksum are mutually exclusive */
rxcsum |= IXGBE_RXCSUM_PCSD;
}