git: a24e9d851227 - stable/13 - e1000: HWCSUM excemption fixes
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 04 Aug 2023 01:23:41 UTC
The branch stable/13 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=a24e9d851227bd7e403befa77392e963859451bb commit a24e9d851227bd7e403befa77392e963859451bb Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2023-07-29 01:14:29 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2023-08-04 01:22:59 +0000 e1000: HWCSUM excemption fixes Also disable IPV6 checksum offload. Spell hw->mac.type < e1000_82543 as e1000_82542. Confusingly, chips like 82540 and 82541 come later and do not have these issues. There is no functional change here, as the enum was defined in such a way it worked correctly. But this reads literally. (cherry picked from commit 38588749af45d738e6f548f15beb415c46ba8658) --- sys/dev/e1000/if_em.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 6ceab6be2b8a..ad1780e03fc5 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -951,9 +951,10 @@ em_if_attach_pre(if_ctx_t ctx) CSUM_IP6_TCP | CSUM_IP6_UDP; /* "PCI/PCI-X SDM 4.0" page 33 (b) - FDX requirement on these chips */ - if (hw->mac.type < e1000_82543 || hw->mac.type == e1000_82547 || + if (hw->mac.type == e1000_82542 || hw->mac.type == e1000_82547 || hw->mac.type == e1000_82547_rev_2) - scctx->isc_capenable &= ~(IFCAP_HWCSUM|IFCAP_VLAN_HWCSUM); + scctx->isc_capenable &= ~(IFCAP_HWCSUM | IFCAP_VLAN_HWCSUM | + IFCAP_HWCSUM_IPV6); /* 82541ER doesn't do HW tagging */ if (hw->device_id == E1000_DEV_ID_82541ER || hw->device_id == E1000_DEV_ID_82541ER_LOM) scctx->isc_capenable &= ~IFCAP_VLAN_HWTAGGING;