Red Hat Bugzilla – Bug 140811
kernel header files do not match the running kernel
Last modified: 2007-11-30 17:07:05 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.3)
Description of problem:
I changed the default kernel from 2.4.21-20.ELsmp to 2.4.21-20.EL and
rebooted my machine. Several header files were changed in
ls -lart shows these with date/time of the reboot:
drwxr-xr-x 28 root root 4096 Nov 23 21:03 ..
drwxr-xr-x 21 root root 4096 Nov 23 21:03 x86
-rw-r--r-- 1 root root 19 Nov 23 21:03 smp.h
-rw-r--r-- 1 root root 26 Nov 23 21:03 highmem64g.h
-rw-r--r-- 1 root root 27 Nov 23 21:03 highmem4g.h
drwxr-xr-x 3 root root 4096 Nov 23 21:03 cpu
drwxr-xr-x 2 root root 4096 Nov 23 21:03 ewrk3
drwxr-xr-x 373 root root 12288 Nov 23 21:03 .
-rw-r--r-- 1 root root 25 Nov 23 21:04 profiling.h
-rw-r--r-- 1 root root 0 Nov 23 21:04 oprofile.h
-rw-r--r-- 1 root root 0 Nov 23 21:04 MARKER
But when I changed back to the smp kernel and rebooted, these files
were not changed again. The problem arose when I tried to rebuild
the vmware module vmmon. It complains that the headers do not match
the running kernel. This situation was reported in bugzilla report
101669 and was dismissed as a vmware bug. But I can see the header
files were changed and never changed back when I went back to the smp
kernel. I can compare them with a machine that I kept the
2.4.21-20.ELsmp kernel running on and they are different. And this
machine builds the vmmon module without problems.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.Change the default kernel to non-smp in /boot/grub/grub.conf.
2.Reboot and see that files in
3.Change the default kernel back to smp and reboot and see that the
files did not change back.
Donna, the include/config subdirectory is dynamically generated as
part of your build procedure (and also needs to be cleared out and
rebuilt when you want to rebuild for a different config). What
procedure are you using?
(You're probably missing a "make mrproper" or a "make oldconfig" or
a "make dep" to perform a fresh rebuild.)
Donna, I could not reproduce this. To the best of my knowledge, there is
no automatic update of files under /usr/src/linux-`uname -r`/include/config
at reboot. I searched among all scripts in /etc, /etc/rc.d, /etc/init.d,
/sbin, and /usr/sbin. (There is a script, /sbin/mkkerneldoth, that changes
/boot/kernel.h on each reboot, but it doesn't modify anything else.)
In particular, the output of "ls -lt include/config" (while residing in
/usr/src/linux-2.4.21-27.EL) matched before and after the reboot from an
SMP kernel to the UP kernel (for 2.4.21-27.EL).