Dear All While trying to compile and install a driver i get the following messages during modprobe: "Using /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o: kernel-module mismatch /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o was compiled for kernel version 2.4.19 while this kernel is version 2.4.19-64GB-SMP" I am using the 2.4.19-64GB-SMP kernel - an updated one "k_smp-2.4.19-163.rpm" I have installed the kernel sources from the SuSE 8.1 cd - i guess this is causing the error message. To solve this do i install the k_smp-2.4.19-163.src.rpm (in /usr/src) or am i missing the point of this? Am a bit of a newbie - have i even got the right idea ? TIA -- Tim __________________________________________________ Do You Yahoo!? Everything you'll ever need on one web page from News and Sport to Email and Music Charts http://uk.my.yahoo.com
On Mon, 2003-02-17 at 23:50, tim schofield wrote:
Dear All
While trying to compile and install a driver i get the following messages during modprobe:
"Using /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o: kernel-module mismatch /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o was compiled for kernel version 2.4.19 while this kernel is version 2.4.19-64GB-SMP"
I am using the 2.4.19-64GB-SMP kernel - an updated one "k_smp-2.4.19-163.rpm"
I have installed the kernel sources from the SuSE 8.1 cd - i guess this is causing the error message.
To solve this do i install the k_smp-2.4.19-163.src.rpm (in /usr/src) or am i missing the point of this?
Before you compile your module you must prepare the sources, so they reflect the running kernel cd /usr/src/linux make mrproper make cloneconfig make dep touch /usr/src/linux/include/linux/modversions.h After that you can compile yor module, and it will fit nicely into the running kernel Anders
--- Anders Johansson <andjoh@rydsbo.net> wrote: > On Mon, 2003-02-17 at 23:50, tim schofield wrote:
Dear All
While trying to compile and install a driver i get the following messages during modprobe:
"Using /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o: kernel-module mismatch /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o was compiled for kernel version 2.4.19 while this kernel is version 2.4.19-64GB-SMP"
I am using the 2.4.19-64GB-SMP kernel - an updated one "k_smp-2.4.19-163.rpm"
I have installed the kernel sources from the SuSE 8.1 cd - i guess this is causing the error message.
To solve this do i install the k_smp-2.4.19-163.src.rpm (in /usr/src) or am i missing the point of this?
Before you compile your module you must prepare the sources, so they reflect the running kernel
cd /usr/src/linux make mrproper make cloneconfig make dep touch /usr/src/linux/include/linux/modversions.h
After that you can compile yor module, and it will fit nicely into the running kernel
Anders
-- Check the headers for your unsubscription address For additional commands send e-mail to suse-linux-e-help@suse.com Also check the archives at http://lists.suse.com Please read the FAQs: suse-linux-e-faq@suse.com
Anders Thanks very much for that - worked like a dream Could you tell me a couple of things: 1. Where shouuld i have gone to RTFM - i couldn't find anyting related to this on the web ? 2. If there isn't a RTFM could you explain what the make steps do ? TIA Tim __________________________________________________ Do You Yahoo!? Everything you'll ever need on one web page from News and Sport to Email and Music Charts http://uk.my.yahoo.com
On Tue, 2003-02-18 at 07:54, tim schofield wrote:
--- Anders Johansson <andjoh@rydsbo.net> wrote: > On Mon, 2003-02-17 at 23:50, tim schofield wrote:
Dear All
While trying to compile and install a driver i get the following messages during modprobe:
"Using /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o: kernel-module mismatch /lib/modules/2.4.19-64GB-SMP/net/hostap_plx.o was compiled for kernel version 2.4.19 while this kernel is version 2.4.19-64GB-SMP"
I am using the 2.4.19-64GB-SMP kernel - an updated one "k_smp-2.4.19-163.rpm"
I have installed the kernel sources from the SuSE 8.1 cd - i guess this is causing the error message.
To solve this do i install the k_smp-2.4.19-163.src.rpm (in /usr/src) or am i missing the point of this?
Before you compile your module you must prepare the sources, so they reflect the running kernel
cd /usr/src/linux make mrproper make cloneconfig make dep touch /usr/src/linux/include/linux/modversions.h
After that you can compile yor module, and it will fit nicely into the running kernel
Anders
-- Check the headers for your unsubscription address For additional commands send e-mail to suse-linux-e-help@suse.com Also check the archives at http://lists.suse.com Please read the FAQs: suse-linux-e-faq@suse.com
Anders
Thanks very much for that - worked like a dream
Could you tell me a couple of things:
1. Where shouuld i have gone to RTFM - i couldn't find anyting related to this on the web ?
I'm not sure, actually. This list has been a huge source of information for me, but I'm sure there are tonnes of web sites as well. I'll leave that question for others. However, a lot of information can be found in /usr/src/linux/Documentation
2. If there isn't a RTFM could you explain what the make steps do ?
cd /usr/src/linux
self explanatory :)
make mrproper
Cleans out the source tree, removing bits from previous compiles that may be in there. Also removes old config files.
make cloneconfig
This is a SuSE hack, as far as I'm aware. This reads the configuration from the running kernel, using the dynamic file /proc/config.gz, and uses that to create an identical configuration for the sources. This ensures that you can compile a kernel identical to the one SuSE supplies. Most people use that as a starting point for experimenting with kernel options.
make dep
Standard kernel compilation command. It creates dependency files which determine the order in which things are to be compiled. It also creates various header files with information from the configuration.
touch /usr/src/linux/include/linux/modversions.h
I'm not actually sure if this is necessary. The SuSE kernels don't use module versioning so that header file is never created by "make dep". But a lot of compiles, notably the nvidia graphics driver, fail if that file isn't present. The command creates an empty file of that name, which seems to be all that's needed. As I say, I'm not sure about this one, but it's worked for me so far. Anders
On Tue, 2003-02-18 at 08:05, Anders Johansson wrote: <waaay too much> Sorry about the over quoting. I meant to snip it before sending, but I forgot. That's what I get for working through the night without sleep :)
On Mon, 2003-02-17 at 23:54, Anders Johansson wrote: [snip]
Before you compile your module you must prepare the sources, so they reflect the running kernel
cd /usr/src/linux make mrproper make cloneconfig make dep touch /usr/src/linux/include/linux/modversions.h
I would like to compile the 2.4.20 kernel but I keep running into 'kernel panic' messages when I try to boot the new kernel. So I wanted to try this approach, until now I copied '/boot/vmlinuz.config' to '/ugkernel/old.config' before running 'make oldconfig'. I downloaded and extracted the sources (tar.bz2 file from kernel.org) to /ugkernel/linux-2.4.20/. Since I tried to compile these sources before I started with 'make mrproper' which ran fine. But running 'make cloneconfig' resulted in the following error: linux:/ugkernel/linux-2.4.20 # make cloneconfig | tee /ugkernel/make2-cloneconfig.out make: *** No rule to make target `cloneconfig'. Stop. Could this be caused because I am not running it from /usr/src/ ? TIA p.s. I added the tee command to capture all output to a file as well as to stdout, but it doesn't seem to get the output off stderror what do I need to add to get stderror to the same file? Would this work? make cloneconfig &> | tee /ugkernel/make2-cloneconfig.out -- # Mertens Bram "M8ram" <bram-mertens@linux.be> Linux User #249103 # # SuSE 8.1 Pro kernel 2.4.19-4GB i686 128MB RAM # # 5:12pm up 3 days, 14:18, 1 user, load average: 0.08, 0.07, 0.07 #
On 01 Mar 2003 17:25:13 +0100 Bram Mertens <bram-mertens@linux.be> wrote:
On Mon, 2003-02-17 at 23:54, Anders Johansson wrote: [snip]
Before you compile your module you must prepare the sources, so they reflect the running kernel
cd /usr/src/linux make mrproper make cloneconfig make dep touch /usr/src/linux/include/linux/modversions.h
I would like to compile the 2.4.20 kernel but I keep running into 'kernel panic' messages when I try to boot the new kernel.
So I wanted to try this approach, until now I copied '/boot/vmlinuz.config' to '/ugkernel/old.config' before running 'make oldconfig'.
I downloaded and extracted the sources (tar.bz2 file from kernel.org) to /ugkernel/linux-2.4.20/.
You need to use the suse kernel sources if you want to use "cloneconfig", it won't work on the vanilla sources from kernel.org, unless you apply all the suse patches. -- use Perl; #powerful programmable prestidigitation
On Sat, 2003-03-01 at 18:49, zentara wrote: [snip]
You need to use the suse kernel sources if you want to use "cloneconfig", it won't work on the vanilla sources from kernel.org, unless you apply all the suse patches.
I don't suppose suse sources for the 2.4.20 kernel are available anywhere? That would probably mean an rpm version would be available as well... Are the patches for the 2.4.20 kernel available somewhere? If so; where do I get them and how do I apply them? Any pointers on more info on compiling kernels, make options, suse-kernels and suse-patches would be welcome as well! TIA -- # Mertens Bram "M8ram" <bram-mertens@linux.be> Linux User #249103 # # SuSE 8.1 Pro kernel 2.4.19-4GB i686 128MB RAM # # 2:34am up 3 days, 23:40, 1 user, load average: 0.11, 0.28, 0.54 #
I downloaded and installed the /SuSE/mantel/2.4.20 kernel rpm for both active and source which installed with no problems just about a week ago. I recommend you do the same. Harry On Saturday 01 March 2003 08:34 pm, Bram Mertens wrote:
On Sat, 2003-03-01 at 18:49, zentara wrote: [snip]
Are the patches for the 2.4.20 kernel available somewhere?
If so; where do I get them and how do I apply them?
Thx for the tip, I downloaded 3 files: k_deflt-2.4.20-18.i586.rpm kernel-source-2.4.20.SuSE-13.i586.rpm kernel-source-2.4.20.SuSE-13.src.rpm According to the list of files of the k_deflt rpm contains a file named 'vmlinuz' that will be extracted to /boot/. This would overwrite my existing kernel, is there a way to prevent this? I know I can rename the file /boot/vmlinuz to something like /boot/vmlinuz-2.4.19 and I know I would have to edit /etc/lilo.conf so the line 'image = /boot/vmlinuz' would become 'image = /boot/vmlinuz-2.4.19'. But would I have to change/rename other files as well? My /etc/lilo.conf also contains a line for 'initrd' which appears to be in part the reason why I can't get my new kernel to boot. What is the difference between the 2 kernel-source-rpms? If I would like to compile the kernel myself, which one would I have to install? TIA On Sun, 2003-03-02 at 02:41, Harry Wert wrote:
I downloaded and installed the /SuSE/mantel/2.4.20 kernel rpm for both active and source which installed with no problems just about a week ago. I recommend you do the same. [snip] -- # Mertens Bram "M8ram" <bram-mertens@linux.be> Linux User #249103 # # SuSE 8.1 Pro kernel 2.4.19-4GB i686 128MB RAM # # 11:23am up 4 days, 8:29, 1 user, load average: 0.14, 0.03, 0.01 #
On 03/02/2003 06:41 PM, Bram Mertens wrote:
Thx for the tip, I downloaded 3 files: k_deflt-2.4.20-18.i586.rpm kernel-source-2.4.20.SuSE-13.i586.rpm kernel-source-2.4.20.SuSE-13.src.rpm
According to the list of files of the k_deflt rpm contains a file named 'vmlinuz' that will be extracted to /boot/. This would overwrite my existing kernel, is there a way to prevent this?
Not installing ;-) . It is not a bad thing. You will also be replacing the modules that would be needed by that kernel image, so renaming just the vmlinuz file wouldn't accomplish much. Since it is an rpm, you could always re-install your presently used kernel if things go bad (but I doubt it as I am using that one now and really like it so far).
But would I have to change/rename other files as well?
You would need to use a 'optioned' mkinitrd, as well as keep the 2.4.19 module tree, but this will be uninstalled by installing the newer kernel. They would conflict otherwise.
My /etc/lilo.conf also contains a line for 'initrd' which appears to be in part the reason why I can't get my new kernel to boot.
Was this a self compiled model?
What is the difference between the 2 kernel-source-rpms? If I would like to compile the kernel myself, which one would I have to install?
kernel-source-2.4.20.SuSE-13.i586.rpm -- Joe Morris New Tribes Mission Email Address: Joe_Morris@ntm.org Web Address: http://www.mydestiny.net/~joe_morris Registered Linux user 231871 God said, I AM that I AM. I say, by the grace of God, I am what I am.
On Sunday 02 March 2003 12:06, Joe Morris (NTM) wrote:
On 03/02/2003 06:41 PM, Bram Mertens wrote:
Thx for the tip, I downloaded 3 files: k_deflt-2.4.20-18.i586.rpm kernel-source-2.4.20.SuSE-13.i586.rpm kernel-source-2.4.20.SuSE-13.src.rpm
According to the list of files of the k_deflt rpm contains a file named 'vmlinuz' that will be extracted to /boot/. This would overwrite my existing kernel, is there a way to prevent this?
You will also be replacing the modules that would be needed by that kernel image, so renaming just the vmlinuz file wouldn't accomplish much.
IMO modules from kernel 2.4.19 will not be replaced by 2.4.20. Renaming image and related files in /boot is always a good idea before updating. By renaming old image in /etc/lilo.conf to, say, label = l-2.4.19-115 and adding new [first] image with new installed kernel you will have access to both old and new one at boot. -- Emcek emcek@poczta.onet.pl --------------r-e-k-l-a-m-a----------------- Tanie bilety lotnicze! http://samoloty.onet.pl
On Sunday 02 March 2003 12:15, Emcek wrote:
On Sunday 02 March 2003 12:06, Joe Morris (NTM) wrote:
On 03/02/2003 06:41 PM, Bram Mertens wrote:
Thx for the tip, I downloaded 3 files: k_deflt-2.4.20-18.i586.rpm kernel-source-2.4.20.SuSE-13.i586.rpm kernel-source-2.4.20.SuSE-13.src.rpm
According to the list of files of the k_deflt rpm contains a file named 'vmlinuz' that will be extracted to /boot/. This would overwrite my existing kernel, is there a way to prevent this?
You will also be replacing the modules that would be needed by that kernel image, so renaming just the vmlinuz file wouldn't accomplish much.
IMO modules from kernel 2.4.19 will not be replaced by 2.4.20.
CORRECTION: modules are deleted, indeed. before making an update just copy /lib/modules/2.4.19-4GB (or your current modules folder) to temporary directory. After updating kernel and modules you can easly rename this folder to appropriate one.
Renaming image and related files in /boot is always a good idea before updating. By renaming old image in /etc/lilo.conf to, say, label = l-2.4.19-115 and adding new [first] image with new installed kernel you will have access to both old and new one at boot.
the same apply to initrd. For example my lilo.conf: boot = /dev/hda change-rules reset read-only menu-scheme = Wb:kw:Wb:Wb lba32 prompt timeout = 80 message = /boot/message image = /boot/vmlinuz label = linux root = /dev/hda2 vga = 791 initrd = /boot/initrd append = "acpi=off" password = xxx restricted image = /boot/vmlinuz_2.4.19 label = linux-2.4.19 root = /dev/hda2 vga = 791 initrd = /boot/initrd_2.4.19 append = "acpi=off" password = xxx restricted optional other = /dev/hda1 label = windows password = yyy optional image = /boot/vmlinuz.shipped label = rescue root = /dev/hda2 vga = 791 initrd = /boot/initrd.shipped append = "ide=nodma apm=off acpi=off vga=normal nosmp maxcpus=0 disableapic 3" password = xxx restricted optional image = /boot/vmlinuz_2.4.19.shipped label = rescue-2.4.19 root = /dev/hda2 vga = 791 initrd = /boot/initrd_2.4.19.shipped append = "ide=nodma apm=off acpi=off vga=normal nosmp maxcpus=0 disableapic 3" password = xxxx restricted optional -- Emcek emcek@poczta.onet.pl --------------r-e-k-l-a-m-a----------------- Tanie bilety lotnicze! http://samoloty.onet.pl
On 02 Mar 2003 11:41:14 +0100 Bram Mertens <bram-mertens@linux.be> wrote:
Thx for the tip, I downloaded 3 files: k_deflt-2.4.20-18.i586.rpm kernel-source-2.4.20.SuSE-13.i586.rpm kernel-source-2.4.20.SuSE-13.src.rpm
According to the list of files of the k_deflt rpm contains a file named 'vmlinuz' that will be extracted to /boot/. This would overwrite my existing kernel, is there a way to prevent this?
I know I can rename the file /boot/vmlinuz to something like /boot/vmlinuz-2.4.19 and I know I would have to edit /etc/lilo.conf so the line 'image = /boot/vmlinuz' would become 'image = /boot/vmlinuz-2.4.19'.
But would I have to change/rename other files as well? My /etc/lilo.conf also contains a line for 'initrd' which appears to be in part the reason why I can't get my new kernel to boot.
Yes you can do this, but as you say, you must be careful to get the names matched up right when you edit lilo.conf. The other thing you need to watch out for: when you install the rpm it will probably want to delete the modules for the old kernel. So you have 2 choices: 1. Make a backup copy of the old modules directory, and after installing the new kernel, replace the old modules. 2. Just rip the rpm apart, extract the files, and manually install the new kernel and libraries. mc will do this, or if you need a script I have an rpm-ripper for you. -- use Perl; #powerful programmable prestidigitation
participants (7)
-
Anders Johansson
-
Bram Mertens
-
Emcek
-
Harry Wert
-
Joe Morris (NTM)
-
tim schofield
-
zentara