Bug 178299 - Kernel compiled with gcc version 3.4.5 which is not part of distribution
Summary: Kernel compiled with gcc version 3.4.5 which is not part of distribution
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: kernel
Version: 4.0
Hardware: i686
OS: Linux
Target Milestone: ---
: ---
Assignee: Jason Baron
QA Contact: Brian Brock
Depends On:
TreeView+ depends on / blocked
Reported: 2006-01-19 08:32 UTC by Anton Rops
Modified: 2013-03-06 05:59 UTC (History)
4 users (show)

Clone Of:
Last Closed: 2006-01-23 19:45:47 UTC

Attachments (Terms of Use)

Description Anton Rops 2006-01-19 08:32:08 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7

Description of problem:
This kernel has been compiled with gcc version 3.4.5. This version of gcc is not included in the distribution (yet). Now it is not possible to compile additional kernel modules which can be used with the stock kernel.

I prefer to use the stock kernel and not build a custom one. There are two obvious solutions:
- A stock kernel compiled with gcc version 3.4.4
- Upgrade gcc to version 3.4.5

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

How reproducible:

Steps to Reproduce:
1.Compile additional kernel module
2.Load the kernel module

Actual Results:  Bad magic

Expected Results:  Module should be loaded

Additional info:

Comment 2 Jason Baron 2006-01-19 14:24:23 UTC
did you actually try this? The kernel ignores the lower numbers of the gcc
version for 'vermagic' purposes. This case seems to work fine for me.

Comment 3 Anton Rops 2006-01-23 08:32:05 UTC
You are right, for "normal" modules it is not the compiler. This is the error
message I get in that case:

squashfs: version magic '2.6.9-22.0.2.ELsmp 686 REGPARM 4KSTACKS gcc-3.4'
should be '2.6.9-22.0.2.ELsmp SMP 686 REGPARM 4KSTACKS gcc-3.4'
insmod: error inserting 'fs/squashfs/squashfs.ko': -1 Invalid module format

If I try it for example with the udf module, same problem.

There is a compiler problem when I compile the sk98lin nic driver. For my server
I need a version that is newer than the one in the kernel source. The driver
source is provided by the manufacturer. When I compile this module I get an
error with complaints about compiler version. I can override this error, but
when I insert the module kernel panic occurs. I have built this module a number
of times before in case of kernel updates, never had a problem.

For info: I prepare my kernel tree with "rpmbuild -bp <spec-file>". Then I alter
the version info in the Makefile.

Comment 4 Jason Baron 2006-01-23 17:13:48 UTC
hmmm, given the error above: squashfs: version magic '2.6.9-22.0.2.ELsmp 686
REGPARM 4KSTACKS gcc-3.4'should be '2.6.9-22.0.2.ELsmp SMP 686 REGPARM 4KSTACKS
gcc-3.4'. That to me means that you are trying to load a module that was built
for UP system against an SMP kernel. Note the missing 'SMP' flag in the first
line. This doesn't appear to be related to the compiler, but rather to the say
in which the modules were built. Please make sure the 'CONFIG_SMP' is set. thanks.

Comment 5 Anton Rops 2006-01-23 18:40:46 UTC
The wrong config file was in place. I fixed it. Works like a charm now. Also the
nic driver was fine after the override.

Thanks for the help. This is no bug. Can be closed.

Comment 6 Jason Baron 2006-01-23 19:45:47 UTC
great. glad i could help.

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