testing early microcode loading

From: Mark Johnston <markj_at_freebsd.org>
Date: Mon, 10 Sep 2018 14:26:55 -0400
Hi,

Support for boot-time loading of Intel microcode updates has landed in
the kernel in r337715, and in the sysutils/devcpu-data port as of 1.20.
I'd like to solicit some testing of the feature ahead of 12.0.

The port has been modified to install /boot/firmware/intel-ucode.bin.
This file contains a copy of every Intel microcode update supplied by
the port.  Per the pkg-message, one can enable early loading of this
file by specifying:

  cpu_microcode_load="YES"
  cpu_microcode_name="/boot/firmware/intel-ucode.bin"

in loader.conf.  The update will be applied upon a subsequent reboot.

Testing consists of enabling early loading and verifying that the CPUs
report an updated microcode version.  If early loading fails, a message
is printed to the dmesg.  If your system is capable of successful ACPI
suspend/resume, it is useful to also verify that the microcode remains
updated following a resume.

To fetch the current microcode version, use sysutils/x86info:

  # kldload -n cpuctl && x86info -a | grep Micro
  Microcode version: 0x0000000000000020

Compare with the version installed by the microcode_update rc script at
run-time:

  # service microcode_update onestart
  Updating CPU Microcode...
  Done.
  # kldload -n cpuctl && x86info -a | grep Micro
  Microcode version: 0x0000000000000020

If your testing indicates that the boot-time loading method doesn't
work, please include the dmesg in your reply.  Thanks in advance.
Received on Mon Sep 10 2018 - 16:27:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:18 UTC