Bug 693702

Summary: linux-kdump set as default kernel when running @everything install on s390x
Product: Red Hat Enterprise Linux 6 Reporter: Jan Stodola <jstodola>
Component: anacondaAssignee: David Cantrell <dcantrell>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team>
Severity: high Docs Contact:
Priority: high    
Version: 6.1CC: rwilliam, syeghiay
Target Milestone: rcKeywords: EasyFix, TestBlocker
Target Release: ---   
Hardware: s390x   
OS: Linux   
Whiteboard:
Fixed In Version: anaconda-13.21.111-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-05-19 12:40:13 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 670159    

Description Jan Stodola 2011-04-05 11:29:20 UTC
Description of problem:
When running kickstart installation with @everything package set, linux-kdump is set as the default kernel. With this configuration, system is not able to boot.

boot messages:
...
Freeing unused kernel memory: 528k freed 
Linux System Dumper starting 
Version 2.2 (64 bit) 
Linux version 2.6.32-128.el6.s390x.kdump (mockbuild.bos.redhat.co
m) (gcc version 4.4.4 20100726 (Red Hat 4.4.4-13 
ERROR: Could not open /sys/bus/ccw/drivers/zfcp/0.0.3025/online 
No such file or directory 
ERROR: Could not enable dump device 
DUMP 'dump.0' FAILED 
01: HCPGSP2629I The virtual machine is placed in CP mode due to a SIGP stop from
 CPU 00.
00: HCPGSP2629I The virtual machine is placed in CP mode due to a SIGP stop from
 CPU 00.


[anaconda root@rtt5 /]# cat /mnt/sysimage/etc/zipl.conf 
[defaultboot]
timeout=5
default=linux-kdump-2.6.32-128.el6.s390x.kdump
target=/boot/
[linux-2.6.32-128.el6.s390x]
        image=/boot/vmlinuz-2.6.32-128.el6.s390x
        ramdisk=/boot/initramfs-2.6.32-128.el6.s390x.img
        parameters="root=/dev/mapper/vg_rtt5-lv_root rd_DASD=0.0.3025 rd_DASD=0.0.3125 rd_DASD=0.0.3225 rd_DASD=0.0.3325 rd_DASD=0.0.3425 rd_DASD=0.0.3525 rd_DASD=0.0.3625 rd_DASD=0.0.3725 rd_DASD=0.0.3060 rd_DASD=0.0.3061 rd_LVM_LV=vg_rtt5/lv_root rd_LVM_LV=vg_rtt5/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009 crashkernel=auto"
[linux-debug-2.6.32-128.el6.s390x.debug]
        image=/boot/vmlinuz-2.6.32-128.el6.s390x.debug
        ramdisk=/boot/initramfs-2.6.32-128.el6.s390x.debug.img
        parameters="root=/dev/mapper/vg_rtt5-lv_root rd_DASD=0.0.3025 rd_DASD=0.0.3125 rd_DASD=0.0.3225 rd_DASD=0.0.3325 rd_DASD=0.0.3425 rd_DASD=0.0.3525 rd_DASD=0.0.3625 rd_DASD=0.0.3725 rd_DASD=0.0.3060 rd_DASD=0.0.3061 rd_LVM_LV=vg_rtt5/lv_root rd_LVM_LV=vg_rtt5/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009 crashkernel=auto"
[linux-kdump-2.6.32-128.el6.s390x.kdump]
        image=/boot/vmlinuz-2.6.32-128.el6.s390x.kdump
        parameters="root=/dev/mapper/vg_rtt5-lv_root rd_DASD=0.0.3025 rd_DASD=0.0.3125 rd_DASD=0.0.3225 rd_DASD=0.0.3325 rd_DASD=0.0.3425 rd_DASD=0.0.3525 rd_DASD=0.0.3625 rd_DASD=0.0.3725 rd_DASD=0.0.3060 rd_DASD=0.0.3061 rd_LVM_LV=vg_rtt5/lv_root rd_LVM_LV=vg_rtt5/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009 crashkernel=auto"


This is a change from RHEL6.0, where regular kernel was set as the default:

[anaconda root@rtt4 root]# grep linux /mnt/sysimage/etc/zipl.conf 
default=linux
[linux]
[linux-kdump]
[linux-debug]


Version-Release number of selected component (if applicable):
RHEL6.1-20110330.2
anaconda-13.21.108-1.el6

How reproducible:
always

Steps to Reproduce:
1. prepare kickstart:
%packages
*
-@conflicts-server

2. start kickstart installation
3. finish the installation and reboot
  
Actual results:
kernel-kdump is booting by default

Expected results:
regular kernel is booting by default

Comment 2 David Cantrell 2011-04-05 22:18:57 UTC
This is a really easy fix:

diff --git a/booty/s390.py b/booty/s390.py
index 0101d96..9fd9c1e 100644
--- a/booty/s390.py
+++ b/booty/s390.py
@@ -131,7 +131,8 @@ class s390BootloaderInfo(bootloaderInfo):
         f.write('[defaultboot]\n')
         if self.timeout:
             f.write('timeout=%d\n' % self.timeout)
-        f.write('default=' + kernelList[-1][0] + '-' + kernelList[-1][2] + '\n')
+        defaultList = filter(lambda x: not (x[0].endswith('debug') or x[0].endswith('kdump')), kernelList)
+        f.write('default=' + defaultList[-1][0] + '-' + defaultList[-1][2] + '\n')
         f.write('target=%s\n' % (self.kernelLocation))
 
         cfPath = "/boot/"

I just tested it out on the latest nightly (kickstart install with your packages section below) and I get three entries in zipl (kernel, debug kernel, and kdump kernel) with the ordinary kernel as the default.

Comment 3 RHEL Program Management 2011-04-05 22:19:24 UTC
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux maintenance release. Product Management has 
requested further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed 
products. This request is not yet committed for inclusion in an Update release.

Comment 5 Jan Stodola 2011-04-08 10:48:35 UTC
Tested on build RHEL6.1-20110406.0 with anaconda-13.21.111-1.el6.
linux-2.6.32-130.el6.s390x was the default kernel after reboot:

[root@rtt5 ~]# cat /etc/zipl.conf 
[defaultboot]
timeout=5
default=linux-2.6.32-130.el6.s390x
target=/boot/
[linux-2.6.32-130.el6.s390x]
        image=/boot/vmlinuz-2.6.32-130.el6.s390x
        ramdisk=/boot/initramfs-2.6.32-130.el6.s390x.img
        parameters="root=/dev/mapper/vg_test-lv_root rd_DASD=0.0.3125 rd_DASD=0.0.3225 rd_DASD=0.0.3325 rd_DASD=0.0.3425 rd_DASD=0.0.3061 rd_LVM_LV=vg_test/lv_root rd_DASD=0.0.3060 rd_LVM_LV=vg_test/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009 crashkernel=auto"
[linux-debug-2.6.32-130.el6.s390x.debug]
        image=/boot/vmlinuz-2.6.32-130.el6.s390x.debug
        ramdisk=/boot/initramfs-2.6.32-130.el6.s390x.debug.img
        parameters="root=/dev/mapper/vg_test-lv_root rd_DASD=0.0.3125 rd_DASD=0.0.3225 rd_DASD=0.0.3325 rd_DASD=0.0.3425 rd_DASD=0.0.3061 rd_LVM_LV=vg_test/lv_root rd_DASD=0.0.3060 rd_LVM_LV=vg_test/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009 crashkernel=auto"
[linux-kdump-2.6.32-130.el6.s390x.kdump]
        image=/boot/vmlinuz-2.6.32-130.el6.s390x.kdump
        parameters="root=/dev/mapper/vg_test-lv_root rd_DASD=0.0.3125 rd_DASD=0.0.3225 rd_DASD=0.0.3325 rd_DASD=0.0.3425 rd_DASD=0.0.3061 rd_LVM_LV=vg_test/lv_root rd_DASD=0.0.3060 rd_LVM_LV=vg_test/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!0.0.0009 crashkernel=auto"

Moving to VERIFIED.

Comment 6 errata-xmlrpc 2011-05-19 12:40:13 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2011-0530.html