Bug 33891 - wrong module prefix on CONFIG_2GB kernels
Summary: wrong module prefix on CONFIG_2GB kernels
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 7.1
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael K. Johnson
QA Contact: Brock Organ
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2001-03-29 16:14 UTC by Need Real Name
Modified: 2007-04-18 16:32 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2001-03-29 16:14:27 UTC
Embargoed:


Attachments (Terms of Use)

Description Need Real Name 2001-03-29 16:14:23 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux 2.2.17-14.0smp i686; en-US; 0.8.1)
Gecko/20010222


.../include/rhconfig.h tries to guess whether the current kernel is
SMP or UP. Accordingly, the module name mangling prefix get set to "smp" or
is left empty.

However, if the kernel has been compiled with CONFIG_2GB=y, the prefix
should be "smp2gig" or "2gig" (SMP/UP). Otherwise newly compiled modules
(OSS/vmware/..) won't work on this kernel.


Reproducible: Always
Steps to Reproduce:
0. run a 2.2.17-14 kernel recompiled with CONFIG_2GB=y

1.cat > testmod.c
#include <linux/kernel.h>
#include <linux/module.h>
#if CONFIG_MODVERSIONS==1
#define MODVERSIONS
#include <linux/modversions.h>
#endif        
int init_module() {
  printk("Hello, world - this is the kernel speaking\n");
  return 0;
}
void cleanup_module() {
  printk("Short is the life of a kernel module\n");
}


2.gcc -D__KERNEL__ -DMODULE -c testmod.c -o testmod.o
3.sudo insmod ./testmod.o
4.sudo grep printk_ /proc/ksyms
	

Actual Results:  sudo insmod ./testmod.o
./testmod.o: unresolved symbol printk_Rsmp1b7d4074
sudo grep printk_ /proc/ksyms
80117f98 printk_Rsmp2gig1b7d4074


Expected Results:  the function printk() should have been mangled to
printk_Rsmp2gig1b7d4074. Prefix  "smp2gig" instead of the "smp" it actually
got.


uname -a

Linux asis-w2 2.2.17-14.0smp #1 SMP Fri Feb 16 15:06:14 CET 2001 i686 unknown

kernel-2.2.17-14 recompiled with the RH spec file, just changed the
relevant config option.

Probably the "initscripts" package would have to be changed since it is
actually responsible for creating /boot/kernel.h which in turn is used by
.../linux/rhconfig.h

Comment 1 Michael K. Johnson 2001-03-29 16:32:52 UTC
While we added this convention for the 2.4 kernel, we will not be
retrofitting it to the 2.2 kernel at this time.


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