Bug 1278938 - dracut doesn't see CONFIG_MICROCODE_[AMD|INTEL]_EARLY after kernel changes
dracut doesn't see CONFIG_MICROCODE_[AMD|INTEL]_EARLY after kernel changes
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: dracut (Show other bugs)
rawhide
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: dracut-maint-list
Fedora Extras Quality Assurance
:
Depends On:
Blocks: 1283892
  Show dependency treegraph
 
Reported: 2015-11-06 14:28 EST by Kevin Fenzi
Modified: 2016-03-12 17:13 EST (History)
11 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1283892 (view as bug list)
Environment:
Last Closed: 2015-11-20 03:03:26 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Kevin Fenzi 2015-11-06 14:28:10 EST
On installing rawhide kernels I see: 

Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]_EARLY!=y

The kernel options may have changed here so dracut needs to adjust to whatever it is now. 

% sudo dnf install kernel*
Last metadata expiration check performed 0:13:16 ago on Fri Nov  6 11:38:40 2015.
Dependencies resolved.
====================================================================================================
 Package                     Arch          Version                        Repository           Size
====================================================================================================
Installing:
 kernel                      x86_64        4.4.0-0.rc0.git4.1.fc24        @commandline         50 k
 kernel-core                 x86_64        4.4.0-0.rc0.git4.1.fc24        @commandline         21 M
 kernel-devel                x86_64        4.4.0-0.rc0.git4.1.fc24        @commandline         10 M
 kernel-modules              x86_64        4.4.0-0.rc0.git4.1.fc24        @commandline         18 M
 kernel-modules-extra        x86_64        4.4.0-0.rc0.git4.1.fc24        @commandline        2.3 M
Removing:
 kernel                      x86_64        4.3.0-1.fc24                   @rawhide              0  
 kernel-core                 x86_64        4.3.0-1.fc24                   @rawhide             51 M
 kernel-devel                x86_64        4.3.0-1.fc24                   @koji                37 M
 kernel-modules              x86_64        4.3.0-1.fc24                   @rawhide             17 M
 kernel-modules-extra        x86_64        4.3.0-1.fc24                   @rawhide            2.1 M

Transaction Summary
====================================================================================================
Install  5 Packages
Remove   5 Packages

Total size: 52 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Installing  : kernel-core-4.4.0-0.rc0.git4.1.fc24.x86_64                                     1/10 
  Installing  : kernel-modules-4.4.0-0.rc0.git4.1.fc24.x86_64                                  2/10 
  Installing  : kernel-modules-extra-4.4.0-0.rc0.git4.1.fc24.x86_64                            3/10 
  Installing  : kernel-4.4.0-0.rc0.git4.1.fc24.x86_64                                          4/10 
  Installing  : kernel-devel-4.4.0-0.rc0.git4.1.fc24. [===========                          ]  5/10Terminated.
  Installing  : kernel-devel-4.4.0-0.rc0.git4.1.fc24.x86_64                                    5/10 
  Erasing     : kernel-4.3.0-1.fc24.x86_64                                                     6/10 
  Erasing     : kernel-devel-4.3.0-1.fc24.x86_64                                               7/10 
  Erasing     : kernel-modules-extra-4.3.0-1.fc24.x86_64                                       8/10 
  Erasing     : kernel-modules-4.3.0-1.fc24.x86_64                                             9/10 
warning: file /lib/modules/4.3.0-1.fc24.x86_64/kernel/drivers/platform/x86/ideapad-laptop.ko.xz: remove failed: No such file or directory
  Erasing     : kernel-core-4.3.0-1.fc24.x86_64                                               10/10 
warning: file /lib/modules/4.3.0-1.fc24.x86_64/kernel/drivers/i2c/busses/i2c-designware-platform.ko.xz: remove failed: No such file or directory
Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]_EARLY!=y
  Verifying   : kernel-modules-extra-4.4.0-0.rc0.git4.1.fc24.x86_64                            1/10 
  Verifying   : kernel-modules-4.4.0-0.rc0.git4.1.fc24.x86_64                                  2/10 
  Verifying   : kernel-devel-4.4.0-0.rc0.git4.1.fc24.x86_64                                    3/10 
  Verifying   : kernel-core-4.4.0-0.rc0.git4.1.fc24.x86_64                                     4/10 
  Verifying   : kernel-4.4.0-0.rc0.git4.1.fc24.x86_64                                          5/10 
  Verifying   : kernel-devel-4.3.0-1.fc24.x86_64                                               6/10 
  Verifying   : kernel-4.3.0-1.fc24.x86_64                                                     7/10 
  Verifying   : kernel-modules-4.3.0-1.fc24.x86_64                                             8/10 
  Verifying   : kernel-core-4.3.0-1.fc24.x86_64                                                9/10 
  Verifying   : kernel-modules-extra-4.3.0-1.fc24.x86_64                                      10/10 

Removed:
  kernel.x86_64 4.3.0-1.fc24                          kernel-core.x86_64 4.3.0-1.fc24              
  kernel-devel.x86_64 4.3.0-1.fc24                    kernel-modules.x86_64 4.3.0-1.fc24           
  kernel-modules-extra.x86_64 4.3.0-1.fc24           

Installed:
  kernel.x86_64 4.4.0-0.rc0.git4.1.fc24               kernel-core.x86_64 4.4.0-0.rc0.git4.1.fc24   
  kernel-devel.x86_64 4.4.0-0.rc0.git4.1.fc24         kernel-modules.x86_64 4.4.0-0.rc0.git4.1.fc24
  kernel-modules-extra.x86_64 4.4.0-0.rc0.git4.1.fc24

Complete!
sudo dnf install kernel*  59.96s user 112.06s system 112% cpu 2:33.30 total
Comment 1 Josh Boyer 2015-11-06 14:30:44 EST
This is because of upstream kernel commit fe055896c040df571e4ff56fb196d6845130057b and this hunk of code in dracut:

if [[ $early_microcode = yes ]]; then
    if [[ $hostonly ]]; then
        [[ $(get_cpu_vendor) == "AMD" ]] \
            && ! check_kernel_config CONFIG_MICROCODE_AMD_EARLY \
            && unset early_microcode
        [[ $(get_cpu_vendor) == "Intel" ]] \
            && ! check_kernel_config CONFIG_MICROCODE_INTEL_EARLY \
            && unset early_microcode
    else
        ! check_kernel_config CONFIG_MICROCODE_AMD_EARLY \
            && ! check_kernel_config CONFIG_MICROCODE_INTEL_EARLY \
            && unset early_microcode
    fi
    [[ $early_microcode != yes ]] \
        && dwarn "Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]_EARLY!=y"
fi


Since the options no longer even exist in the kernel, they won't show up in the resulting config-<kernel version> installed file even though the functionality is still actually in the kernel.  I've emailed Harald and the upstream author of the kernel patch.
Comment 2 Thorsten Leemhuis 2015-11-19 13:57:52 EST
@harald: What's the plan forward here? You afaics fixed it upstream by
http://git.kernel.org/cgit/boot/dracut/dracut.git/commit/?id=875426f2fc1360401ddb5f97c67df031e54958d5 which afaics made it to rawhide already. But everybody that installs a 4.4 kernel in f23 or earlier will get a initramfs without microcode update, which is not a good idea :-/
Comment 3 Andrew Clayton 2016-03-05 10:38:51 EST
The Fedora 22 kernel 4.4.3 update just hit this. Guess an updated dracut needs to be pushed there also?

$ rpm -qi dracut
Name        : dracut
Version     : 041
Release     : 14.fc22
Architecture: x86_64
Install Date: Thu 25 Jun 2015 18:08:53 BST
Group       : System Environment/Base
Size        : 936320
License     : GPLv2+ and LGPLv2+
Signature   : RSA/SHA256, Thu 18 Jun 2015 20:52:45 BST, Key ID 11adc0948e1431d5
Source RPM  : dracut-041-14.fc22.src.rpm
Build Date  : Tue 16 Jun 2015 13:58:42 BST
Comment 4 Harald Hoyer 2016-03-10 05:40:02 EST
(In reply to Andrew Clayton from comment #3)
> The Fedora 22 kernel 4.4.3 update just hit this. Guess an updated dracut
> needs to be pushed there also?
> 
> $ rpm -qi dracut
> Name        : dracut
> Version     : 041
> Release     : 14.fc22
> Architecture: x86_64
> Install Date: Thu 25 Jun 2015 18:08:53 BST
> Group       : System Environment/Base
> Size        : 936320
> License     : GPLv2+ and LGPLv2+
> Signature   : RSA/SHA256, Thu 18 Jun 2015 20:52:45 BST, Key ID
> 11adc0948e1431d5
> Source RPM  : dracut-041-14.fc22.src.rpm
> Build Date  : Tue 16 Jun 2015 13:58:42 BST

https://bugzilla.redhat.com/show_bug.cgi?id=1314501


dracut-041-15.fc22 has been submitted as an update to Fedora 22.
https://bodhi.fedoraproject.org/updates/FEDORA-2016-4072c51267
Comment 5 customercare 2016-03-12 17:13:51 EST
Kernel 4.4.4-200 does not boot on all systems.
The bootprocess stopped with "/sbin/init: Bad Exec Format'"

System:  FC 22 i686 PAE

Both kernels do not boot, with the same errormessage:

title Fedora (4.4.4-200.fc22.i686+PAE) 22 (Twenty Two)
        root (hd0,0)
        kernel /boot/vmlinuz-4.4.4-200.fc22.i686+PAE ro root=UUID=dca7eea1-687e-476a-a9a0-c41ef0329113 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=de_DE.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=de-latin1
        initrd /boot/initramfs-4.4.4-200.fc22.i686+PAE.img
title Fedora (4.4.3-201.fc22.i686+PAE) 22 (Twenty Two)
        root (hd0,0)
        kernel /boot/vmlinuz-4.4.3-201.fc22.i686+PAE ro root=UUID=dca7eea1-687e-476a-a9a0-c41ef0329113 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=de_DE.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=de-latin1
        initrd /boot/initramfs-4.4.3-201.fc22.i686+PAE.img

Dracut is version 14.fc22


This happend TODAY :


Pakete werden heruntergeladen:
(1/2): kernel-PAE-4.4.4-200.fc22.i686.rpm                                                                                                           685 kB/s |  78 kB     00:00    
(2/2): kernel-PAE-core-4.4.4-200.fc22.i686.rpm                                                                                                      9.7 MB/s |  20 MB     00:02    
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Gesamt                                                                                                                                              6.3 MB/s |  20 MB     00:03     
Transaktionsüberprüfung wird ausgeführt
Transaktionsprüfung war erfolgreich.
Transaktion wird getestet
Transaktionstest war erfolgreich.
Transaktion wird ausgeführt
  Neuinstallieren  : kernel-PAE-core-4.4.4-200.fc22.i686                                                                                                                        1/4 
  Neuinstallieren  : kernel-PAE-4.4.4-200.fc22.i686                                                                                                                             2/4 
  Löschen          : kernel-PAE-4.4.4-200.fc22.i686                                                                                                                             3/4 
  Löschen          : kernel-PAE-core-4.4.4-200.fc22.i686                                                                                                                        4/4 
Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]_EARLY!=y
  Überprüfung läuft: kernel-PAE-4.4.4-200.fc22.i686                                                                                                                             1/4 
  Überprüfung läuft: kernel-PAE-core-4.4.4-200.fc22.i686                                                                                                                        2/4 
  Überprüfung läuft: kernel-PAE-4.4.4-200.fc22.i686                                                                                                                             3/4 
  Überprüfung läuft: kernel-PAE-core-4.4.4-200.fc22.i686                                                                                                                        4/4 

Reinstalliert:
  kernel-PAE.i686 4.4.4-200.fc22                                                         kernel-PAE-core.i686 4.4.4-200.fc22                                                        

Komplett!

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