Anyone having hardware access to an epic CPU ? Could you please report the numbers from zstdcat /lib/firmware/amd-ucode/README.zst
vs the patch level reported by grep microcode /proc/cpuinfo
, even if you run a different distro ?
Arch Linux
The beloved lightweight distro
I don’t have that README.zst file in Ubuntu 22.04 LTS, but the amd64-microcode version is 3.20191218.1ubuntu2
. The package source code should be here (The server has not rebooted since the last package update).
$ grep "\(microcode\|model name\)" /proc/cpuinfo | head -2
model name : AMD EPYC 7742 64-Core Processor
microcode : 0x8301025
Thx a lot for checking this, you gave me the missing part in the puzzle.
It was hard to find the actual patch increase, but the latest commit lists the current patch level:
+ - New microcodes:
+ + Family=0x17 Model=0x31 Stepping=0x00: Patch=0x0830107a Length=3200 bytes <--- Your processor, higher patch version
+ + Family=0x17 Model=0xa0 Stepping=0x00: Patch=0x08a00008 Length=3200 bytes
+ - Updated microcodes:
+ + Family=0x17 Model=0x08 Stepping=0x02: Patch=0x0800820d Length=3200 bytes
+ + Family=0x17 Model=0x01 Stepping=0x02: Patch=0x0800126e Length=3200 bytes
+ - CVE-2023-20593
I guess that pretty much confirms the theory, AMD only rolls microcode for Epyc and there is no magic sauce why the patch version are all over the place on their consumer chips. For me, the worst thing is their lack of transparency. Guess they're justification is ridiculous and incomprehensible from a customer standpoint, otherwise they would have communicated it.
Also funny that Ubuntu 22.04 doesn't ship microcode for Zen3 and higher, why don't they backport such things?
If I have a Ryzen 3900x, how would I go about checking this for myself? I can see the patch_level (0x08701030) in my journalctl
but not sure which family I should be looking at. It doesn't seem to appear anywhere in that list you linked though.
The family is printed in the kernel log: [ 0.380496] smpboot: CPU0: AMD Ryzen 9 5900X 12-Core Processor (family: 0x19, model: 0x21, stepping: 0x2)
Ah thanks! Seems like the 3900x isn't even listed in the README.