linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Problem with late AMD microcode reload/feedback
@ 2018-12-15 23:46 Rafał Miłecki
  2018-12-16  0:05 ` Borislav Petkov
  2018-12-16  0:08 ` Borislav Petkov
  0 siblings, 2 replies; 9+ messages in thread
From: Rafał Miłecki @ 2018-12-15 23:46 UTC (permalink / raw)
  To: Borislav Petkov, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	x86, Linux Kernel Mailing List

Hi,

I'm trying to reload AMD Ryzen Mobile (fam17h) microcode doing:
echo 1 > /sys/devices/system/cpu/microcode/reload

The problem is I don't get any feedback. No error for the "echo"
command, no a single new line in the "dmesg". I have no idea if
microcode has been reloaded or not.

I did a quick pr_info based debugging and I noticed that:
1) load_microcode_amd() calls __load_microcode_amd() and gets UCODE_OK
2) load_microcode_amd() calls find_patch(0) and gets a NULL

because of that NULL load_microcode_amd() doesn't return UCODE_NEW.

Seeing above I've decided to debug find_patch(). It seems to be
calling __find_equiv_id(0) which returns 0.

The last step was debugging __find_equiv_id() and find_equiv_id(). It
seems that find_equiv_id() gets sig 8458000 that doesn't exists in the
equiv_cpu_table:
[19.736770] microcode: [find_equiv_id] sig:8458000
[19.736772] microcode: [find_equiv_id] equiv_table->installed_cpu:8392466
[19.736775] microcode: [find_equiv_id] equiv_table->installed_cpu:8392578

Has my microcode been updated? Is there a way to improve that
microcode loading code? Is find_patch(0) returning a NULL expected or
maybe a bug?

-- 
Rafał

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-12-16 11:12 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-15 23:46 Problem with late AMD microcode reload/feedback Rafał Miłecki
2018-12-16  0:05 ` Borislav Petkov
2018-12-16  8:08   ` Rafał Miłecki
2018-12-16 10:06     ` Borislav Petkov
2018-12-16 10:26       ` Rafał Miłecki
2018-12-16 10:44         ` Borislav Petkov
2018-12-16 11:02           ` Rafał Miłecki
2018-12-16 11:12             ` Borislav Petkov
2018-12-16  0:08 ` Borislav Petkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).