3

After following the instructions the boot process halted saying it couldn't find intel-ucode.img.

The package is installed:

$ pacman --query --info intel-ucode | head -n1
Name           : intel-ucode

Gummiboot is configured:

$ cat /boot/loader/entries/arch.conf
title Arch Linux
linux /vmlinuz-linux
initrd /intel-ucode.img
initrd /initramfs-linux.img
options root=/dev/sda2 rw

But there's no such file:

$ sudo updatedb
$ locate intel-ucode.img
[no output]

Kernel:

$ uname --kernel-release
3.16.4-1-ARCH
$ uname --kernel-version
#1 SMP PREEMPT Mon Oct 6 08:22:27 CEST 2014

What did I miss?

l0b0
  • 51,350
  • Kernel version? – jasonwryan Oct 23 '14 at 07:32
  • it doesnt seem to me like the bootloader should have much relevance to cpu microcode. i say this because the microcode is applied by the linux kernel - and at that point whatever bootloader you are using has already fulfilled its purpose. besides, im pretty sure gummiboot is a boot manager - not a loader - which means it provides a menu and returns your selection to the firmware which does the actual loading of the selected os kernel. this means that if the loader is the problem youll want to look at firmware not gummiboot, but probably the solution lies in initramfs instead. – mikeserv Oct 23 '14 at 10:00

1 Answers1

2

Note the warning on the Arch Wiki microcode page:

Warning: With linux 3.17-2 and linux-lts 3.14.21-2 and newer versions, Intel microcode updates are not triggered automatically any more.

The intel-ucode package will only install the intel-ucode.img to /boot/ if you are running a 3.17.* kernel. Now that 3.17 has been moved to [core], upgrade with pacman -Syu and then reinstall intel-ucode and the image will get written to /boot/. Then your gummiboot configuration, which is correct, will work as advertised.

jasonwryan
  • 73,126
  • 1
    Had to upgrade to get kernel 3.17 (didn't need to reinstall intel-ucode; it was upgraded at the same time), and then it worked as you said. Thanks! – l0b0 Oct 23 '14 at 12:01