NACK: [SRU][Q/P/N][PATCH 0/11] UBUNTU: SAUCE: Do not instantiate SPD5118 sensors on i801 SMBus controllers

Alice C. Munduruca alice.munduruca at canonical.com
Wed Sep 3 18:50:27 UTC 2025


Will be resubmitting without Noble series as suggested by Stefan.

- Alice C. Munduruca

On 02/09/2025 10:37, Alice C. Munduruca wrote:
> BugLink: https://bugs.launchpad.net/bugs/2114963
> 
> [ Impact ]
> 
> The spd5118 sensor will not function normally if Intel's SMBus has the SPD Write Disable bit set. Notably, during a resume, the following messages would appear because driver is not able to sync back the cached register values:
> 
>     [1300273.242285] spd5118 2-0050: Failed to write b = 0: -6
>     [1300273.242297] spd5118 2-0050: PM: dpm_run_callback(): spd5118_resume [spd5118] returns -6
>     [1300273.242309] spd5118 2-0050: PM: failed to resume async: error -6
> 
> This commit has been sent to the upstream mailing list, but seems to have stalled there. [1]
> 
> [ Fix ]
> 
> Questing: Backported from [2]
> Plucky: Cherry pick upstream version of 1st patch in PR [3]
>         and backport from [2]
> Noble:  Many cherry picks from upstream needed to apply [3]
>         and the backport from [2] Copied the annotation for
>         the CONFIG_I2C_I801_MUX Kconfig option from plucky.
> 
> No changes were made to the original patch's code itself. Surrounding context had changed
> between the original tree and the mainline ones, and so the lines of the commit were
> manually moved into their original locations or as close as was possible.
> 
> [ Tests ]
> 
> 1. Install and boot the kernel. Check dmesg. The following message should not appear:
> 
>     [ 2.819557] spd5118 2-0050: DDR5 temperature sensor: vendor 0x06:0x32 revision 1.6
> 
> 2. Suspend the system and resume. The error messages should not appear.
> 
> The test above has been passed on each of the backports. (Also boot tested in a VM environment)
> 
> [ Where the problem could occur ]
> 
> This makes the spd5118 device not instantiate at all during the i801 controller probe.
> This was however what the driver author recommended, so let's do it this way before a better
> solution appears.
> 
> The addition of the context patches to Noble could introduce vulnerable code, although this would
> be the same code as in Plucky/Questing. For Plucky/Questing, changes are local and minor, and so at
> worst smbus would still be buggy or flaky on certain systems.
> 
> [Additional Information]
> 
> [1] https://lore.kernel.org/all/20250613-for-upstream-not-instantiate-spd5118-v2-1-cf456ed9b587@canonical.com/
> [2] https://kernel.ubuntu.com/forgejo/kernel/noble-linux-oem/commit/cbb6c74a6507331f0bfd03b33fb763a1005b29ac
> [3] https://kernel.ubuntu.com/forgejo/kernel/noble-linux-oem/pulls/226
> 
> Guenter Roeck (1):
>   i2c: smbus: Support DDR5 and LPDDR5 SPD EEPROMs
> 
> Heiner Kallweit (2):
>   i2c: i801: Call i2c_register_spd for muxed child segments
>   i2c: i801: Fix missing Kconfig dependency
> 
> Thomas Weißschuh (1):
>   i2c: piix4: Register SPDs
> 
> Wolfram Sang (1):
>   i2c: i801: reword according to newest specification
> 
> Yo-Jung (Leo) Lin (2):
>   i2c: smbus: introduce Write Disable-aware SPD instantiating functions
>   UBUNTU: SAUCE: i2c: i801: Do not instantiate spd5118 under SPD Write
>     Disable
> 
>  drivers/i2c/busses/Kconfig     | 10 +++++
>  drivers/i2c/busses/i2c-i801.c  | 67 +++++++++++++++++++++++++++-------
>  drivers/i2c/busses/i2c-piix4.c |  9 +++++
>  drivers/i2c/i2c-smbus.c        | 27 ++++++++++++--
>  include/linux/i2c-smbus.h      |  6 ++-
>  5 files changed, 101 insertions(+), 18 deletions(-)




More information about the kernel-team mailing list