git: 38588749af45 - main - e1000: HWCSUM excemption fixes
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 29 Jul 2023 01:18:05 UTC
The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=38588749af45d738e6f548f15beb415c46ba8658 commit 38588749af45d738e6f548f15beb415c46ba8658 Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2023-07-29 01:14:29 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2023-07-29 01:17:35 +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. MFC after: 1 week --- 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 32d8c3282e33..1f6100cff293 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -949,9 +949,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;