You are not logged in.

#1 2019-08-15 01:24:07

squeakychair
Member
Registered: 2018-04-15
Posts: 15

[SOLVED] Early vs. late loading microcode

I've recently done a fresh Arch install on a new machine, and I'm working my way through the General recommendations wiki page and came across the Microcode page. This page mentions loading the microcode "early" and "late". It technically describes how to do both, but I'm left wondering if I should prefer one over the other? Do I need to do both (e.g. early & late hooks that both need to happen)? If someone here can clarify, I'll update the wiki with accordingly. Thanks!

Last edited by squeakychair (2019-08-16 11:40:30)

Offline

#2 2019-08-15 08:38:51

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,237

Re: [SOLVED] Early vs. late loading microcode

Microcodes often fix issues that might as well prevent linux from booting (e.g. some recent AMDs had an issues with linux trying to use certain instruction sets without an updated microcode, which afaik is the entire reason an amd-ucode package was made available, because late loading was too late in that case), so it's generally "safer" to do it early. You usually don't need both as once loaded the microcode will be active as long as the cpu is online and the kernel "persists" the applied microcode version in memory and will reapply it when resuming from suspend (even if it does both times there won't be any harm as you would generally apply the same version).

Last edited by V1del (2019-08-15 08:41:58)

Offline

#3 2019-08-15 20:28:24

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 15,104

Re: [SOLVED] Early vs. late loading microcode

but I'm left wondering if I should prefer one over the other?

Usually you don't have a choice in that.
Intel has relied on early microcode loading since intel added the option to the kernel years ago.
AMD processors worked fine with late microcode loading, but recent amd processor models also need early loading to make microcode updates work as intended.

TL;DR :
with intel cpus before approx 2014 or AMD pre-ryzen cpus  you can try late microcode loading.
For everything newer you need early loading.

Last edited by Lone_Wolf (2019-08-15 20:28:43)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#4 2019-08-15 21:10:29

loqs
Member
Registered: 2014-03-06
Posts: 18,929

Re: [SOLVED] Early vs. late loading microcode

Intel ucode can be loaded late however:

  1. Arch packages the ucode as a cpio archive for early loading only.

  2. Some Intel ucode requires certain patches for late loading. (these are now present upstream and in the kernel packages)

https://github.com/intel/Intel-Linux-Pr … eleasenote
https://bugs.archlinux.org/task/59841

Offline

#5 2019-08-16 02:48:26

squeakychair
Member
Registered: 2018-04-15
Posts: 15

Re: [SOLVED] Early vs. late loading microcode

Thank you everyone! Sounds like my new Intel-based machine is destined for early loading. I updated the wiki a bit to give future readers some direction on which option is best.

Offline

Board footer

Powered by FluxBB