Red Hat Bugzilla – Bug 36480
rc.sysinit creates defective /boot/kernel.h
Last modified: 2014-03-16 22:20:20 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.77 [en] (X11; U; Linux 2.2.19-7.0.1custom i686)
After building a custom kernel version 2.2.19-7.0.1custom and rebooting,
the /boot/kernel.h file is misconfigured by /etc/rc.d/rc.sysinit. The
problem is that rc.sysinit chechks the RPM database and accepts only
rpm-installed Red Hat kernel packages. This should be changed because many
users build their own custom kernels. Here is a copy of the botched
/* This file is automatically generated at boot time. */
/* Kernel type package kernel-2.2.19-7.0.1custom is not installed */
#ifndef __MODULE_KERNEL_package kernel-2.2.19-7.0.1custom is not installed
#define __MODULE_KERNEL_package kernel-2.2.19-7.0.1custom is not installed
#define __BOOT_KERNEL_ENTERPRISE 0
#define __BOOT_KERNEL_SMP 0
#define __BOOT_KERNEL_UP 1
Steps to Reproduce:
1. Build a custom kernel version 2.2.19-7.0.1custom
2. Install kernel and reboot
3. Check /boot/kernel.h file
This is fixed in 7.1.
Additionally, even if you make a customized kernel RPM, if the release has an
's' or 'e' in it, this /etc/rc.d/rc.sysinit (and /sbin/mkkerneldoth in RH 7.1)
line causes a bad /boot/kernel.h to be generated:
KERNEL_TYPE=`uname -r | sed 's_^[^se]*\(\|smp\|enterprise\)$_-\1_;s_^-$__'`
For example, this works:
>echo "2.2.19-7.0.1smp" | sed 's_^[^se]*\(\|smp\|enterprise\)$_-\1_;s_^-$__'
but this doesn't:
>echo "2.2.19-7.0.1specialsmp" | sed \
A fix for this is:
KERNEL_TYPE=`uname -r | sed 's_^.*\(smp\|enterprise\)$_-\1_;t;s_.*__;'`
"This is fixed in 7.1" means that it is NOT fixed in 7.0 -- therefore, I would
not call this bug "resolved". BTW, this bug was introduced in 7.0 (our 6.2
machines seem to be unaffected).
Although 7.1 is only days from the initial shipment, many of us will continue
using 7.0 for months (e.g. because some specialized drivers are not yet
converted to kernel 2.4). Sure, we can fix rc.sysinit ourselves, but it would
be better if corrected initscripts were available as 7.0 errata.
It's resolved in 7.1. 7.1 is the current release.
In that case, can 7.1 initscripts /sbin/mkkerneldoth be fixed as I mentioned
Sure, will be in 5.84-1.
*** Bug 39239 has been marked as a duplicate of this bug. ***