raphael / linux-samus

Linux 4.16 on Chromebook Pixel 2015
GNU General Public License v2.0
181 stars 36 forks source link

microcode updates are not being applied #203

Closed colemickens closed 6 years ago

colemickens commented 6 years ago

I kept seeing this at boot:

# dmesg | grep microcode
[Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x25 (or later)

This indicating the microcode updates weren't being applied, despite intel-ucode being installed, and the correct image present in /boot and listed first in the initrd= line in the auto-generated grub config.

Eventually I found this: https://wiki.archlinux.org/index.php/microcode#Enabling_Intel_early_microcode_loading_in_custom_kernels

I didn't save the config output and I'm booted in mainline kernel right now, but the kernel options needed for microcode update application were not be enabled when booted with linux-samus.

When booted with this mainline kernel, the firmware bug warning goes away, and I get:

# dmesg | grep microcode
[    0.000000] microcode: microcode updated early to revision 0x25, date = 2017-01-27
[    0.657120] microcode: sig=0x306d4, pf=0x40, revision=0x25
[    0.657396] microcode: Microcode Update Driver: v2.2.
raphael commented 6 years ago

Thanks for bringing this up and for all the details! The microcode flags are enabled in the latest build (4.13-6, kernel version 4.13.8-6-ph) however I'm still seeing the error in the dmesg output... Will have to investigate further.

colemickens commented 6 years ago

FWIW, it seems to be fixed to me:

[    0.000000] microcode: microcode updated early to revision 0x25, date = 2017-01-27
[    0.000000] random: get_random_bytes called from start_kernel+0x2b/0x3f5 with crng_init=0
[    0.000000] Linux version 4.13.8-6-ph (cole@pixel) (gcc version 7.2.0 (GCC)) #1 SMP Wed Oct 18 12:52:52 PDT 2017
[    0.000000] Command line: BOOT_IMAGE=/@/boot/vmlinuz-linux-samus4 root=UUID=306e128c-153f-4730-86c6-abf9ac3c4906 rw rootflags=subvol=@ cryptdevice=/dev/sda2:cryptroot iomem=relaxed quiet

...

[    0.544226] microcode: sig=0x306d4, pf=0x40, revision=0x25
[    0.544332] microcode: Microcode Update Driver: v2.2.

You can see it's the new kernel I built just a bit ago and is updating the microcode.

I'm going to close this out since I opened it, but I guess you'll reopen if you're still seeing issues.