login
Header Space

 
 

can't find most modules after compiled kernel-2.6.0

January 11, 2004 - 11:10pm
Submitted by psyche on January 11, 2004 - 11:10pm.
Linux

i download module-init-tools-3.0-pre5 and extract
run this command:
#./configure
#make moveold
#make
#make install

i boot computer with new kernel ,sysetm boot is OK, but can't load any modules
i run this command compiled the new kernel
# make mrproper
#make menuconfig
#make
#make install
#depmod -a

...............

what's rong?

help !

Err...

January 12, 2004 - 9:03pm

Didn't you read the docs?

make menuconfig
make bzImage
make modules
make modules_install

I readed it

January 13, 2004 - 3:16am

we just can replace make dep make bzImage make modules make modules_install .. with make command for kernel 2.6.0
the command make install do for installing a new kernel
for more info do command make help

It's a bit more complicated

January 17, 2004 - 8:37pm

"make dep", "make bzImage" and "make modules" are deprecated. But "make modules_install" is not.

According to the documentation, and to my experience, "make install" copies the kernel in (usually) /boot, then run lilo. So, if you're using lilo, you've got to configure it manually before doing "make install". And anyway, you have to run "make modules_install" to copy the modules in the /lib/modules/2.6.X/ directory.

Personally, I don't use make install : I simply find it useless.

Yes, I've read the docs but 2

January 17, 2004 - 7:19pm

Yes, I've read the docs but 2.6.1 is NOT finding the modules. They're dutifully installed in /lib/modules/2.6.1 but insmod and whatnot are not traversing into the directory to FIND them!

I'm thinking there's just some magic string that's not been set somewhere to unlock the kernel's understanding of where to go find the modules.

Here's a sample of output:

# ls -la /lib/modules/2.6.1/kernel/drivers/usb/net/
total 84
drwxr-xr-x 2 root root 4096 Jan 17 11:16 .
drwxr-xr-x 7 root root 4096 Jan 17 11:16 ..
-rw-r--r-- 1 root root 30486 Jan 17 11:16 pegasus.ko
-rw-r--r-- 1 root root 14428 Jan 17 11:16 rtl8150.ko
-rw-r--r-- 1 root root 25498 Jan 17 11:16 usbnet.ko

# insmod usbnet
insmod: can't read 'usbnet': No such file or directory

# strace insmod usbnet
execve("/sbin/insmod", ["insmod", "usbnet"], [/* 28 vars */]) = 0
uname({sys="Linux", node="xbox", ...}) = 0
brk(0) = 0x804b000
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/mmx/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/i686/mmx", 0xbffff050) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/i686", 0xbffff050) = -1 ENOENT (No such file or directory)
open("/lib/tls/mmx/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/mmx", 0xbffff050) = -1 ENOENT (No such file or directory)
open("/lib/tls/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360W\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1539996, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40016000
old_mmap(0x42000000, 1267276, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x42000000
old_mmap(0x42130000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x130000) = 0x42130000
old_mmap(0x42133000, 9804, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x42133000
close(3) = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0x40016540, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
brk(0) = 0x804b000
brk(0x804c000) = 0x804c000
brk(0) = 0x804c000
create_module(umovestr: Input/output error
0, 0) = -1 ENOSYS (Function not implemented)
brk(0) = 0x804c000
brk(0x8050000) = 0x8050000
open("usbnet", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "insmod: can\'t read \'usbnet\': No "..., 55insmod: can't read 'usbnet': No such file or directory
) = 55
exit_group(1)

Hum.

January 17, 2004 - 8:39pm

Have you tried to run depmod ?

And are you SURE you're running the right kernel, not the old one ?

module-init-tools may be your saviour

September 7, 2004 - 8:53am
Anonymous

I had similar probs compiling nVidia drivers for kernel 2.6.8.
I discovered that module loading in 2.6 has been completed revamped and you need to update your module tools.
In Debian just do apt-get install module-init-tools . I'm not sure what the equivalent package in RH is but I'll bet it's a similar exercise.
You'll find
http://www.linux.org.uk/~davej/docs/post-halloween-2.6.txt
very useful, as it has some very helpful "gotcha's" and stuff.

HTH.
Rocci.

missing a long times -)

February 2, 2004 - 8:39pm

I also run the command *make modules_install*
but I still have a trouble.
I find lose a few modules when run *lsmod * ,such as *vfat*

/etc/rc.sysinit

February 3, 2004 - 4:52pm
Anonymous

psyche:

kernel 2.6 replaced the old /proc/ksyms with /proc/kallsyms. however /etc/rc.sysinit is not updated with the new info. when the system boots up and cannot find /proc/ksyms, it will stop loading modules.

edit /etc/rc.sysinit and replace all /proc/ksyms with /proc/kallsyms and hopefully this will solve ur problem.

thanks

February 4, 2004 - 4:15am

I'll try it . Is it available of modified */etc/rc.d/rc.sysinit* on old kernel when boot new kernel failed ?

yes ur old kernel will be abl

February 4, 2004 - 8:04pm
Anonymous

yes ur old kernel will be able to boot with this. but modules will fail to load too.

What about on a debian system

February 4, 2004 - 9:31pm
Anonymous

What about on a debian system where we don't have a /etc/rc.sysinit file? What exactly are we supposed to edit to fix the whole ksysms thing?

still have a trouble

February 4, 2004 - 8:19pm

I replaced all /proc/ksyms with variable PROC_FILE_SYSTEM,it declare and get value by a parse script ahead

release=`uname -r`
if [ $release = "2.6.0" ] ; then
PROC_FILE_SYSTEM=/proc/kallsyms
else
PROC_FILE_SYSTEM=/proc/ksyms
fi

the new kernel can load modules vfat, fat and alsa,the old kernel also work fine, but still have a troubel,can't load usb modules

more /etc/rc.d/sys.init

February 4, 2004 - 9:09pm
Anonymous

read here http://thomer.com/linux/migrate-to-2.6.html

under the usb section, everything explained clearly. :)

:(

February 5, 2004 - 8:35pm

sadly! i modify /etc/rc.d/rc.sysinit and /etc/init.d/halt by the way ,then can't start my computer nice ,
I just run on level single
SOS SOS

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
speck-geostationary