Bug 98390 (IT_39083) - /boot/kernel.h has wrong defines in x445/RX800 with kernel 2.4.9-e.25summit
Summary: /boot/kernel.h has wrong defines in x445/RX800 with kernel 2.4.9-e.25summit
Keywords:
Status: CLOSED ERRATA
Alias: IT_39083
Product: Red Hat Enterprise Linux 2.1
Classification: Red Hat
Component: initscripts
Version: 2.1
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact: Brock Organ
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-07-02 10:20 UTC by Bruno Verkist
Modified: 2014-03-17 02:37 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-08-06 16:00:30 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Bruno Verkist 2003-07-02 10:20:46 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)

Description of problem:
In a Primergy RX800/IBM x445 with 2 CECs, 8 CPUs and 8 GB memory running Red 
Hat Enterprise AS 2.1 with latest errata kernel 2.4.9-e.25summit the 
file /boot/kernel.h has wrong defines. 

__BOOT_KERNEL_SMP is 0, should be 1
__BOOT_KERNEL_UP is 1, should be 0

Packages that need to be compiled during installation (e.g. FSC's ServerView 
eecd daemon srvmagt-eecd-3.00-14.redhat.rpm) and that rely on correct defines 
in /boot/kernel.h fail to compile.

The same incorrect defines were also seen in e.16summit.

/boot/kernel.h:
#ifndef __BOOT_KERNEL_H_
#define __BOOT_KERNEL_H_
 
/* Kernel type i686 */
 
#ifndef __MODULE_KERNEL_i686
#define __MODULE_KERNEL_i686 1
#endif
 
#ifndef __BOOT_KERNEL_ENTERPRISE
#define __BOOT_KERNEL_ENTERPRISE 0
#endif
 
#ifndef __BOOT_KERNEL_SMP
#define __BOOT_KERNEL_SMP 0
#endif
 
#ifndef __BOOT_KERNEL_UP
#define __BOOT_KERNEL_UP 1
#endif
 
#endif


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. Boot your x445/RX800
2. Have a look at /boot/kernel.h
3. ---
    

Actual Results:  /boot/kernel.h has wrong defines. __BOOT_KERNEL_UP 1 tells us 
we have a uniprocessor machine which is definitely wrong.

Expected Results:  __BOOT_KERNEL_UP should be 0
__BOOT_KERNEL_SMP should be 1

Additional info:

Comment 1 Arjan van de Ven 2003-07-02 10:26:25 UTC
    
Actual Results:  /boot/kernel.h has wrong defines. __BOOT_KERNEL_UP 1 tells us 
we have a uniprocessor machine which is definitely wrong.

__BOOT_KERNEL_UP does NOT say you have an uniprocessor machine, just as 
__BOOT_KERNEL_SMP doesn't tell you you have a smp machine.

__BOOT_KERNEL_SMP should ABSOLUTELY not be 1 for the summit kernel, since it
means you are running the kernel-smp kernel, which you are not. For example, if
you run the enterprise kernel (which is SMP) this is also 0. 

What the real bug is is that there is no __BOOT_KERNEL_SUMMIT in this file,
while there should be one. (not that you can build external modules against the
summit kernel right now so I fail to see how this can actually break something).


Comment 3 Johnray Fuller 2004-05-18 14:23:59 UTC
Some software use the kernel.h file to install modules in the
appropriate places, such as Intel's profiling software (vtune).

J

Comment 4 Arjan van de Ven 2004-06-13 08:41:06 UTC
1) kernel.h is generated by initscripts not the kernel
2) summit kernels you can't build external modules against directly,
esp not in the e.25 era (old!)

Comment 9 Bill Nottingham 2004-08-06 16:00:30 UTC
Closing; re-running mkkerneldoth should solve the issue.


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