Re: [Fr1-general] installing kernel module problem
Brought to you by:
ptb
From: Peter T. B. <pt...@in...> - 2010-02-28 21:31:55
|
"Also sprach Dawid Marcin Grzesiak:" > $:/tmp/enbd-2.4.37a$ sudo insmod /tmp/enbd.ko > insmod: error inserting '/tmp/enbd.ko': -1 Input/output error OK, sorry about that. What's the error? Show what dmesg says ... Likely mismatched kernel and module, I guess. > here is my kernel version and distro, I'm running it on 32-bit Intel Atom What source did you compile it against? > $:/usr/src/linux-headers-2.6.28-18-generic$ uname -a > Linux dmg-netbook 2.6.28-18-generic #59-Ubuntu SMP Thu Jan 28 01:23:03 UTC > 2010 i686 GNU/Linux > $:/usr/src/linux-headers-2.6.28-18-generic$ cat /boot/config-2.6.28-18-generic |diff - .config This cannot be the right place for source? You can't have kernel source in a headers dir! What's going on? > $:/usr/src/linux-headers-2.6.28-18-generic$ > > This is the newest precompiled kernel that I can install from Ubuntu repos. You need to compile the kernel yourself, usually. The above makes it look a little like you don't have the source, or not all of it, anyway, but just the headers. > Should I compile a more recent kernel? Dunno. No evidence to say so so far. > How can I receive a little more debug info what's going wrong? If there is a problem, dmesg will say what it is. It's also possible that the compilation is simply miscued because of some bits and pieces left hanging in /tmp from compiling other stuff. Can't say without evidence. > I've attached compilation log. Ah! Great! Your kernel compilation was ... ... in make[1]: Entering directory `/usr/src/linux-headers-2.6.28-18-generic' That's not the right place, surely? You don't have kernel source there as far as I understand the placements of kernel source on debian derived distros. Those are just headers. Debian at least gives you a .tgz in /usr/src and you have to unarchive that into some place and point the compilation at the source that you used to compile the kernel with. THe easiest way to do that is to make the link /lib/modules/2.6.28-18-generic/build point to the kernel source directory. Like this on my laptop: % ls -ld /lib/modules/`uname -r`/build lrwxrwxrwx 1 root root 29 Oct 7 12:33 /lib/modules/2.6.31.2-SMP/build -> /usr/local/src/linux-2.6.31.2/ Otherwise the module compilation went fine. I presume it's just not compiled in a way that corresponds to your kernel. Use real kernel source, I think is the best I can do without seeing the the dmesg output. t will likely say something ike "mismatched kernel version". Or "mismatched compiler version"! Anyway, that's what you need to look at. Peter |