CVE-2025-40157

Summary

In the Linux kernel, the following vulnerability has been resolved:

EDAC/i10nm: Skip DIMM enumeration on a disabled memory controller

When loading the i10nm_edac driver on some Intel Granite Rapids servers, a call trace may appear as follows:

UBSAN: shift-out-of-bounds in drivers/edac/skx_common.c:453:16 shift exponent -66 is negative … __ubsan_handle_shift_out_of_bounds+0x1e3/0x390 skx_get_dimm_info.cold+0x47/0xd40 [skx_edac_common] i10nm_get_dimm_config+0x23e/0x390 [i10nm_edac] skx_register_mci+0x159/0x220 [skx_edac_common] i10nm_init+0xcb0/0x1ff0 [i10nm_edac] …

This occurs because some BIOS may disable a memory controller if there aren't any memory DIMMs populated on this memory controller. The DIMMMTR register of this disabled memory controller contains the invalid value ~0, resulting in the call trace above.

Fix this call trace by skipping DIMM enumeration on a disabled memory controller.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxba987eaaabf99b462cdfed86274e3455d5126349 < 8100b6c0f9089d5b156642b81270ce27fff17490affected
LinuxLinuxba987eaaabf99b462cdfed86274e3455d5126349 < 1652f14cf3bef5a4baa232de954fc22bdcaa78feaffected
LinuxLinuxba987eaaabf99b462cdfed86274e3455d5126349 < c20da24272f1ac79e9f9083bba577d049cd02bbbaffected
LinuxLinuxba987eaaabf99b462cdfed86274e3455d5126349 < 2e6fe1bbefd9c059c3787d1c620fe67343a94dffaffected
LinuxLinux6.3affected
LinuxLinux0 < 6.3unaffected
LinuxLinux6.6.112 <= 6.6.*unaffected
LinuxLinux6.12.53 <= 6.12.*unaffected
LinuxLinux6.17.3 <= 6.17.*unaffected
LinuxLinux6.18 <= *unaffected

Weaknesses

References