Control: retitle -1 needrestart: microcode: false positives, select expected 
version based on sig/pf/pf_mask

On Mon, 28 May 2018 19:09:54 +0200 Francois Mescam wrote:

> The currently running processor microcode revision is 0x7000012 which is
> not the expected microcode revision 0xe000009.
...
> /usr/sbin/iucode_tool: system has processor(s) with signature 0x00050663
...
>   001/001: sig 0x00050662, pf_mask 0x10, 2018-01-22, rev 0x0015, size 31744
>   001/002: sig 0x00050663, pf_mask 0x10, 2018-01-22, rev 0x7000012, size 22528
>   001/003: sig 0x00050664, pf_mask 0x10, 2018-01-22, rev 0xf000011, size 22528
>   001/004: sig 0x00050665, pf_mask 0x10, 2018-01-22, rev 0xe000009, size 18432

The issue here appears to be that needrestart isn't matching the list
of available microcode versions against the CPU's sig value.

In addition, on the #debian-next IRC channel, a Debian user discovered
a system where there were multiple microcode revisions available for
the processor sig and the one that was loaded was the one where the
processor flags (pf) value (from dmesg and sysfs) bitwise ANDed with
the microcode pf_mask value resulted in a non-zero value.

$ sudo sort -u /sys/devices/system/cpu/cpu*/microcode/processor_flags
0x2

$ sudo dmesg | grep pf=
[    1.103617] microcode: sig=0x106e5, pf=0x2, revision=0x8

-- 
bye,
pabs

https://wiki.debian.org/PaulWise

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to