[PATCH 0/1][SRU][P] x86/microcode/AMD: Add TSA microcode SHAs

AceLan Kao acelan.kao at canonical.com
Wed Sep 3 04:54:56 UTC 2025


From: "Chia-Lin Kao (AceLan)" <acelan.kao at canonical.com>

BugLink: https://bugs.launchpad.net/bugs/2121417

[ Impact ]

When updating AMD microcodes with the package amd64-microcode, which
places the microcodes in `usr/lib/firmware/amd-ucode`, an update on the
allowed SHAs on the kernel side is needed since the following commit
included in upstream version 6.14:
 50cef76d5cb0e199 x86/microcode/AMD: Load only SHA256-checksummed patches

There is an incoming update for amd64-microcode in security-proposed[1]
that fixes CVE-2024-36350, and CVE-2024-36357 that needs to have the
patched version in the mentioned allowed SHAs list.

Currently, when trying to run a plucky kernel with the proposed version of
amd64-microcode[2], the error is:
[ 0.000000] microcode: No sha256 digest for patch ID: 0xa60120a found
...
[ 0.741096] microcode: Current revision: 0x0a601203

Above example of error is for AMD Ryzen 9 7950X ("Raphael") but could
happen with other processors and microcode version as well.

The more concerning impact here is that, whenever the kernel doesn't know
about a patch (not in the checksummed list) it will end up downgrading to
the version originally available in the machine's platform initialization.

For example, in the above case, using a device available in testflinger[3],
it would be:
- machine's original microcode:
  - patch version 0x0a601203
- current amd64-microcode version: 3.20250311.1ubuntu0.25.04.1
  - patch version 0x0a601209
- udpated amd64-microcode version: 3.20250708.0ubuntu0.25.04.2[2]
  - patch version 0x0a60120a

So, when running a kernel without the checksummed SHAs the device is
not running with the previous version but with an outdated version
uncovering possible already fixed issues.

[ Fix ]

Cherry-pick following upstream commit:

* 2329f250e04d3b8e x86/microcode/AMD: Add TSA microcode SHAs

[ Test Plan ]

- On boot, get microcode version and logs with 'dmesg | grep microcode'
- Install amd64-microcode from security-proposed[1]
- Reboot
- Get microcode logs and check version update and sha256 digest error

[ Additional Information ]

[1] https://launchpad.net/~ubuntu-security-proposed/+archive/ubuntu/ppa
[2] https://launchpad.net/~ubuntu-security-proposed/+archive/ubuntu/ppa/+packages?field.name_filter=amd64-microcode&field.status_filter=published&field.series_filter=plucky
[3] https://certification.canonical.com/hardware/202409-35688/

Borislav Petkov (AMD) (1):
  x86/microcode/AMD: Add TSA microcode SHAs

 arch/x86/kernel/cpu/microcode/amd_shas.c | 112 +++++++++++++++++++++++
 1 file changed, 112 insertions(+)

-- 
2.43.0




More information about the kernel-team mailing list