Intel microcode

This article describes the setup of microcode-ctl to update the microcode of Intel processors.

Kernel
You need to activate the following kernel options:

Software
You can now install :

OpenRC
You can now start microcode-ctl:

To start microcode-ctl at boot time, add it your boot runlevel:

systemd
See: Systemd. Simply make sure that the Microcode loader is set as a module in the kernel configuration as noted above. You don't need to add a service or do anything else.

Verification
In order to verify if the CPU microcode is being applied you can use the following command:

In this example the microcode of a dual-core Intel CPU has been successfully updated from revision 0xa07 to revision 0xa0b.

Early Microcode
Some CPUs (like Haswell) require loading microcode before everything else, as the update causes system instability otherwise. For that reason the kernel supports early microcode loading.

After emerging, generate the microcode cpio archive using iucode_tool or this sys-firmware/iucode-toolebuild:

Add it to your bootloader:

If you're already using another initrd, you can specify several of them in your bootloader or, if your bootloader does not support that, merge them yourself using cat. The early microcode might be ignored if it's not the first initrd, though.