I have recently installed Gentoo Linux on my AMD Ryzen 7 1700X. Now I face segmentation faults during heavy compilation loads and also random restarts in an idle state.
As a very first step I verified the current microcode version:
grep -m 1 microcode /proc/cpuinfo
microcode : 0x8001126
However, according to this table the latest microcode should be 0x08001129. It thus seems to be a good idea to update the microcode for the CPU.
So I emerged =sys-kernel/linux-firmware-20180730
(containing /lib/firmware/amd-ucode/microcode_amd_fam17h.bin
).
Further, I enabled the following options in the kernel:
CONFIG_MICROCODE=y
CONFIG_MICROCODE_AMD=y
After a reboot, I tried loading the microcode manually (late microcode update):
echo 1 > /sys/devices/system/cpu/microcode/reload
However, when I do this, no new line appears in dmesg
:
dmesg | grep microcode
[ 0.465121] microcode: CPU0: patch_level=0x08001126
[ 0.465514] microcode: CPU1: patch_level=0x08001126
[ 0.465932] microcode: CPU2: patch_level=0x08001126
[ 0.466394] microcode: CPU3: patch_level=0x08001126
[ 0.466772] microcode: CPU4: patch_level=0x08001126
[ 0.467159] microcode: CPU5: patch_level=0x08001126
[ 0.467537] microcode: CPU6: patch_level=0x08001126
[ 0.467908] microcode: CPU7: patch_level=0x08001126
[ 0.468268] microcode: CPU8: patch_level=0x08001126
[ 0.468653] microcode: CPU9: patch_level=0x08001126
[ 0.468999] microcode: CPU10: patch_level=0x08001126
[ 0.469409] microcode: CPU11: patch_level=0x08001126
[ 0.469744] microcode: CPU12: patch_level=0x08001126
[ 0.470136] microcode: CPU13: patch_level=0x08001126
[ 0.470455] microcode: CPU14: patch_level=0x08001126
[ 0.470757] microcode: CPU15: patch_level=0x08001126
[ 0.471092] microcode: Microcode Update Driver: v2.2.
I would expect something like microcode: CPU0: new patch_level=0x08001129
.
What am I missing here?
Some kernel CONFIG_
option?
Can I turn on some sort of debug information?
Or even better – how can I list the microcode version provided in microcode_amd_fam17h.bin
?