NACK: [PATCH 0/1][SRU][U/P/O/N/J/F/B/X/T] UBUNTU: SAUCE: e1000/e1000e: add eeprom_bad_csum_allow module parameter
Massimiliano Pellizzer
massimiliano.pellizzer at canonical.com
Tue Mar 25 08:17:41 UTC 2025
On Mon, 24 Mar 2025 at 19:26, You-Sheng Yang <vicamo.yang at canonical.com> wrote:
>
> BugLink: http://bugs.launchpad.net/bugs/2102113
>
> [Impact]
>
> Kernel module e1000e on load performs NVM checksum validation. This may
> fails when the EEPROM got corrupted, but if bypassed the NIC still works
> as it supposed to. This was once resolved for Presice in LP #1070182,
> and carried all the way up until dropped in Trusty for unknown reason.
>
> This patch adds the eeprom_bad_csum_allow module parameter for the
> e1000 and e1000e drivers. This allows users of affected hardware
> to bypass EEPROM/NVM checksum validation.
>
> This patch was first sent to kernel mailing list as
> https://lore.kernel.org/lkml/471E817D.5030500@intel.com/, but was
> rejected for the favor of fixing the actual root cause in the EEPROM.
> Then this was once accepted for Presice in LP #1070182, and had been
> carried all the way up until dropped in Trusty for unknown reason.
>
> [Fix]
>
> Cherry pick commit fc650e376e72 ("UBUNTU: SAUCE: add
> eeprom_bad_csum_allow module parameter") from linux/precise.
>
> [Test Case]
>
> 1. Boot the patched kernel. The dmesg should have following error
> message on devices with corrupted NIC EEPROM:
>
> e1000e 0000:00:19.0: >The NVM Checksum Is Not Valid
> e1000e: probe of 0000:00:19.0 failed with error -5
>
> 2. Unload the driver and reload with eeprom_bad_csum_allow=1:
>
> $ sudo modprobe -r e1000e
> $ sudo modprobe e1000e eeprom_bad_csum_allow=1
>
> 3. Check if netdev is up:
>
> $ ip link
>
> [Where problems could occur]
>
> From the discussion thread, skipping checksum validation works only as a
> quick work-around, and the configurations stored in EEPROM still matter
> in runtime. The adapter may still fail to work as expected.
>
> [Other Info]
>
> To pick up this patch for all living kernels. Nominate for Trusty,
> Xenial, Bionic, Focal, Jammy, Noble, Oracular, Plucky and Unstable.
>
> Chris J Arges (1):
> UBUNTU: SAUCE: e1000/e1000e: add eeprom_bad_csum_allow module parameter
>
> drivers/net/ethernet/intel/e1000/e1000_main.c | 8 ++++++--
> drivers/net/ethernet/intel/e1000e/netdev.c | 14 ++++++++++++--
> 2 files changed, 18 insertions(+), 4 deletions(-)
>
> --
> 2.48.1
>
>
> --
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
Patches for ESM kernels should be sent to the appropriate mailing list.
Moreover, make sure to follow the rules described in [1] and [2] when
sending a v2.
Thanks.
[1] https://canonical-kernel-docs.readthedocs-hosted.com/en/latest/reference/patch-acceptance-criteria/
[2] https://canonical-kernel-docs.readthedocs-hosted.com/en/latest/reference/stable-patch-format/
--
Massimiliano Pellizzer
More information about the kernel-team
mailing list