[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070222003309.GA22471@plexity.net>
Date: Wed, 21 Feb 2007 16:33:09 -0800
From: Deepak Saxena <dsaxena@...xity.net>
To: linux-kernel@...r.kernel.org
Subject: Modprobe as script breaks initramfs kernel?
We attempted an experiment in cleaning up some modprobe messages during
initramfs bootup when the modules directory is missing by moving modprobe
to modprobe-bin and replacing modprobe with the following simple shell script:
#!/bin/sh
# Clean up bootup when modules are not present
if [ -e "/lib/modules/'uname -r'/modules.dep" ] ; then
/sbin/modprobe-bin $*
else
exit 0
fi
Running this on any architecture causes a non fatal kernel BUG message
out of the do_pipe() code path everytime modprobe is called.
BUG: unable to handle kernel NULL pointer dereference at virtual address 00000014
c016a5e6
*pde = 00000000
Oops: 0000 [#1]
CPU: 0
EIP: 0060:[<c016a5e6>] Not tainted VLI
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010286 (2.6.18_pro500-pc_target-x86_586 #2)
eax: 00000000 ebx: bf8f9ae8 ecx: 00000000 edx: c16a00f0
esi: c16f0c80 edi: 00000011 ebp: c16f0bc0 esp: c16e9f40
ds: 007b es: 007b ss: 0068 preempt: 00000001
Stack: 00000000 dff64dc0 c13ff580 00000000 ffffffe9 dfe84a40 00000002 c16e8000
c169f41c 0808d581 c166b900 c010f5bd c166b934 c169f41c 0808d581 00000000
00000004 c16e9fbc bf8f9ae8 c16e9fa8 00000011 c16e8000 c0107737 c16e9fa8
Call Trace:
[<c010f5bd>] [<c0107737>] [<c01030d7>] <0>Code: c6 c7 44 24 10 e9 ff ff ff 0f 84 1b 02 00 00 e8 91 2e ff ff 85 c0 89 c5 c7 44 24 10 e9 ff ff ff 0f 84 34 02 00 00 a1 d8 75 53 c0 <8b> 40 14 89 04 24 e8 8f ec 00 00 85 c0 89 c3 0f 84 0a 02 00 00
EIP: [<c016a5e6>] SS:ESP 0068:c16e9f40
Warning (Oops_read): Code line not seen, dumping what data is available
>>EIP; c016a5e6 <do_pipe+46/2c0> <=====
>>ebx; bf8f9ae8 <phys_startup_32+bf7f9ae8/c0000000>
>>edx; c16a00f0 <pg0+f220f0/3f880400>
>>esi; c16f0c80 <pg0+f72c80/3f880400>
>>ebp; c16f0bc0 <pg0+f72bc0/3f880400>
>>esp; c16e9f40 <pg0+f6bf40/3f880400>
Trace; c010f5bd <do_page_fault+15d/75a>
Trace; c0107737 <sys_pipe+17/60>
Trace; c01030d7 <syscall_call+7/b>
>>EIP; c016a5e6 <do_pipe+46/2c0> <=====
I've done a quick skim of the code and don't quite see the issue there.
Can the kernel not handle modprobe as a script that then executes another
process this early in the boot sequence?
Tnx,
~Deepak
ps: Yes, I know this is "fix" to error messages is ugly. :)
--
Deepak Saxena - dsaxena@...xity.net - http://www.plexity.net
in the end, they will not say, "those were dark times," they will ask
"why were their poets silent?" - Bertold Brecht
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists