Bug 1955078 - CPU microcode updates for AMD processors are not in initramfs
Summary: CPU microcode updates for AMD processors are not in initramfs
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: linux-firmware
Version: rawhide
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: David Woodhouse
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-04-29 11:37 UTC by el reporto
Modified: 2022-06-08 11:16 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-06-08 06:23:20 UTC
Type: Bug


Attachments (Terms of Use)

Description el reporto 2021-04-29 11:37:28 UTC
Description of problem:

With the introduction of this feature ( https://fedoraproject.org/wiki/Changes/CompressKernelFirmware ) the following microcode updates for AMD processors do not get integrated in the initramfs (even after a sudo dracut -f on an installed system) - affected are also running Fedora 34 live images.

microcode_amd.bin.xz
microcode_amd_fam15h.bin.xz
microcode_amd_fam16h.bin.xz
microcode_amd_fam17h.bin.xz

Therefore the microcode will not be updated on boot if these files are packed and not extracted.


Version-Release number of selected component (if applicable):
linux-firmware-20210315-119

How reproducible:
In installed system and live system of Fedora 34 always reproducible on AMD systems

Steps to Reproduce:
1. Check with dmesg | grep microcode the version of your microcode or do a sudo lsinitrd /boot/initramfs-5.11.1*-300.fc34.x86_64.img | grep microcode (there is no kernel/x86/microcode line)
2. Unpack with sudo unxz -k *.xz in /lib/firmware/amd-ucode the microcode update files and do a sudo dracut -f
3. Reboot your machine and check with dmesg | grep microcode the version of your microcode (now increased version number)

Actual results:
CPU microcode of AMD processors is not being updated during boot

Expected results:
CPU microcode of AMD processors is being updated during boot (the microcode files should be extracted and not being compressed in .xz-Format)

Additional info:
I think Intel machines are not affected as those microcode updates are not present in packed xz-format. Of course you can only verify it, if you are running an AMD system.

Comment 1 el reporto 2021-04-29 18:09:47 UTC
Everyone (including Intel users) could also check it much more easily by booting a live medium of Fedora 34.

Open a terminal and enter the following command:
sudo lsinitrd /boot/initramfs-5.11.12-300.fc34.x86_64.img | grep microcode

Output:
kernel/x86/microcode
kernel/x86/microcode/GenuineIntel.bin

This line
kernel/x86/microcode/AuthenticAMD.bin

is missing. As it is a live medium the initramfs should also include the AMD files (like in previous versions of Fedora).

Comment 2 Peter Robinson 2021-04-29 18:18:26 UTC
This actually looks like it's a bug in dracut not taking the compressed firmware into account for this use case, it does for other firmware. Will look further.

Comment 3 Julian Sikorski 2022-02-08 23:26:01 UTC
This is still a problem as of February 2022.

Comment 4 Ben Cotton 2022-05-12 16:51:49 UTC
This message is a reminder that Fedora Linux 34 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 34 on 2022-06-07.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
'version' of '34'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, change the 'version' 
to a later Fedora Linux version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora Linux 34 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora Linux, you are encouraged to change the 'version' to a later version
prior to this bug being closed.

Comment 5 Ronald Wahl 2022-05-13 08:03:30 UTC
I see this also with Fedora 35.

Late loading with

  echo 1 > /sys/devices/system/cpu/microcode/reload

works - but only until next reboot.

It is also unclear if the microcode is fully active then:

kernel: x86/CPU: CPU features have changed after loading microcode, but might not take effect.
kernel: x86/CPU: Please consider either early loading through initrd/built-in or a potential BIOS update.

Comment 6 Ben Cotton 2022-06-08 06:23:20 UTC
Fedora Linux 34 entered end-of-life (EOL) status on 2022-06-07.

Fedora Linux 34 is no longer maintained, which means that it
will not receive any further security or bug fix updates. As a result we
are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.