Bug 1151192

Summary: RHEL 7.1 should include 'dracut -f' in post-install script to build a new ramdisk when the microcode_ctl rpm is updated
Product: Red Hat Enterprise Linux 7 Reporter: Rachel Sibley <rasibley>
Component: microcode_ctlAssignee: Petr Oros <poros>
Status: CLOSED ERRATA QA Contact: Rachel Sibley <rasibley>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.1CC: jbastian, rasibley
Target Milestone: rc   
Target Release: 7.1   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: microcode_ctl-2.1-11.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-19 12:10:51 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Rachel Sibley 2014-10-09 18:25:01 UTC
:::::::::::::::::::::
:: Host info ::
:::::::::::::::::::::
- Grab the host specific details:

~]# hostname
intel-sharkbay-dh-02.lab.bos.redhat.com

~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.0 (Maipo)

~]# uname -r
3.10.0-123.el7.x86_64

~]# lscpu | egrep 'family|Model|Stepping'
CPU family: 6
Model: 60
Model name: Intel(R) Core(TM) i5-4670T CPU @ 2.30GHz
Stepping: 3

- Update the microcode
~]# yum update microcode_ctl-2.1-10.el7.x86_64.rpm

- reboot

- Display the current version of the microcode, note the old version 0x17 is still displayed in the early messages

root@intel-sharkbay-dh-02 ~]# grep -i microcode /var/log/dmesg
[ 0.000000] CPU0 microcode updated early to revision 0x17, date = 2013-08-16
[ 0.352737] CPU1 microcode updated early to revision 0x17, date = 2013-08-16
[ 0.384789] CPU2 microcode updated early to revision 0x17, date = 2013-08-16
[ 0.407709] CPU3 microcode updated early to revision 0x17, date = 2013-08-16
[ 3.812369] microcode: CPU0 sig=0x306c3, pf=0x2, revision=0x17
[ 3.818975] microcode: CPU1 sig=0x306c3, pf=0x2, revision=0x17
[ 3.825588] microcode: CPU2 sig=0x306c3, pf=0x2, revision=0x17
[ 3.832197] microcode: CPU3 sig=0x306c3, pf=0x2, revision=0x17
[ 3.838832] microcode: Microcode Update Driver: v2.00 <tigran.co.uk>, Peter Oruba
[ 13.462398] microcode: CPU0 sig=0x306c3, pf=0x2, revision=0x17
[ 13.471026] microcode: CPU0 updated to revision 0x1c, date = 2014-07-03
[ 13.478677] microcode: CPU1 sig=0x306c3, pf=0x2, revision=0x17
[ 13.486354] microcode: CPU1 updated to revision 0x1c, date = 2014-07-03
[ 13.493874] microcode: CPU2 sig=0x306c3, pf=0x2, revision=0x17
[ 13.501483] microcode: CPU2 updated to revision 0x1c, date = 2014-07-03
[ 13.509028] microcode: CPU3 sig=0x306c3, pf=0x2, revision=0x17
[ 13.516601] microcode: CPU3 updated to revision 0x1c, date = 2014-07-03

Note the early update was to version 0x17, and the failsafe microcode systemd service updated it later in boot to 0x1C.

- Update the ram disk with the new microcode:
~]# dracut -v -f

- reboot

- Display the current version of the microcode, note the early update lines now display 0x1c
[root@intel-sharkbay-dh-02 ~]# dmesg | grep -i microcode
[ 0.000000] CPU0 microcode updated early to revision 0x1c, date = 2014-07-03
[ 0.352755] CPU1 microcode updated early to revision 0x1c, date = 2014-07-03
[ 0.384804] CPU2 microcode updated early to revision 0x1c, date = 2014-07-03
[ 0.407725] CPU3 microcode updated early to revision 0x1c, date = 2014-07-03
[ 3.804512] microcode: CPU0 sig=0x306c3, pf=0x2, revision=0x1c
[ 3.811118] microcode: CPU1 sig=0x306c3, pf=0x2, revision=0x1c
[ 3.817731] microcode: CPU2 sig=0x306c3, pf=0x2, revision=0x1c
[ 3.824341] microcode: CPU3 sig=0x306c3, pf=0x2, revision=0x1c
[ 3.830974] microcode: Microcode Update Driver: v2.00 <tigran.co.uk>, Peter Oruba 

For more details, please reference the following bugs about the early-load feature:
  kernel: https://bugzilla.redhat.com/show_bug.cgi?id=876850
  dracut: https://bugzilla.redhat.com/show_bug.cgi?id=1045096
  microcode_ctl: https://bugzilla.redhat.com/show_bug.cgi?id=1049650

Comment 2 Rachel Sibley 2015-01-13 14:38:05 UTC
I am re-proposing for 7.2 as this is not considered a blocker or exception for 7.1

Comment 5 Rachel Sibley 2015-08-17 18:39:44 UTC
ALL TESTS PASSED

Verified the microcode version is updated early in boot
=======================================
~]#  rpm -q microcode_ctl
microcode_ctl-2.1-10.el7.x86_64

~]# cat /sys/devices/system/cpu/cpu0/microcode/version
0xe

[    1.762674] microcode: CPU0 sig=0x306d4, pf=0x40, revision=0xe
[    1.769287] microcode: CPU1 sig=0x306d4, pf=0x40, revision=0xe
[    1.775898] microcode: CPU2 sig=0x306d4, pf=0x40, revision=0xe
[    1.782508] microcode: CPU3 sig=0x306d4, pf=0x40, revision=0xe
[    1.789137] microcode: Microcode Update Driver: v2.00 <tigran.co.uk>, Peter Oruba


After
=======================================
~]# yum update microcode_ctl-2.1-12.el7.x86_64.rpm

~]# reboot

~]# dmesg | grep -i microcode
[    0.000000] CPU0 microcode updated early to revision 0x18, date = 2014-12-05
[    0.396472] CPU1 microcode updated early to revision 0x18, date = 2014-12-05
[    1.753781] microcode: CPU0 sig=0x306d4, pf=0x40, revision=0x18
[    1.760492] microcode: CPU1 sig=0x306d4, pf=0x40, revision=0x18
[    1.767200] microcode: CPU2 sig=0x306d4, pf=0x40, revision=0x18
[    1.773907] microcode: CPU3 sig=0x306d4, pf=0x40, revision=0x18
[    1.780634] microcode: Microcode Update Driver: v2.00 <tigran.co.uk>, Peter Oruba

~]# cat /sys/devices/system/cpu/cpu0/microcode/version
0x18

Comment 6 errata-xmlrpc 2015-11-19 12:10:51 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-2385.html