Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 197730 - genkernel-3.4.9_pre5: modprobe during init fails - busybox PATH handling broken
Summary: genkernel-3.4.9_pre5: modprobe during init fails - busybox PATH handling broken
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Hosted Projects
Classification: Unclassified
Component: genkernel (show other bugs)
Hardware: All Linux
: Highest blocker (vote)
Assignee: Gentoo Genkernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-01 08:17 UTC by Robin Johnson
Modified: 2007-11-02 00:43 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-11-01 08:17:25 UTC
modprobe during the initramfs fails. It does not show any modules loading automatically, then if I use shell and run modprobe manually, I get this: 
# modprobe dm-mod
modprobe: exec of insmod: No such file or directory
modprobe: failed to load module dm-mod

Manually running insmod for each of the needed modules (with their deps first) works, so it's just modprobe that is broken somehow.

My system:
Linux grubbs-int 2.6.24-rc1-pmp-gc1698780 #3 SMP Wed Oct 31 19:53:34 PST 2007 x86_64 Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz GenuineIntel GNU/Linux

I'm digging into it more now to try and find out why.
Comment 1 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-11-01 08:40:54 UTC
Ok, something is broken in the $PATH handling of that busybox.

If I do:
# modprobe FOO
I get the failure
If I do:
# cd /sbin
# modprobe FOO
It works fine.

Upgrading to blocker/P1.
Comment 2 Andrew Gaffney (RETIRED) gentoo-dev 2007-11-01 13:41:56 UTC
Perhaps this particular issue is why genkernel was building a static insmod and friends instead of using the busybox-provided ones. We've got a few options here:

* cd to /sbin before running insmod in /linuxrc
* go forward with the upgrade to busybox-1.4.2 and see if it fixes the issue
* restore the code that builds the static insmod and friends

All of these are pretty easy, although, I'm not sure any of them are actually desirable.

Robin, what is the PATH in the initramfs shell?
Comment 3 Andrew Gaffney (RETIRED) gentoo-dev 2007-11-01 13:51:23 UTC
Hmm, I can't reproduce this with an install cd kernel/initramfs produced by genkernel-3.4.9_pre3. As far as I know, nothing has changed between _pre3 and _pre5 that might account for this. I'll bump to _pre5 and rebuild and see if I can reproduce.
Comment 4 Andrew Gaffney (RETIRED) gentoo-dev 2007-11-01 14:28:02 UTC
I just rebuild my installcd with genkernel-3.4.9_pre5, and there it is. It's the same version of busybox in both. The PATH looks sane:

/ # echo $PATH
/usr/local/bin:/usr/bin:/sbin:/bin
/ # which insmod
/sbin/insmod

The only change that I can see that might have affected busybox is the mdadm patch  from bug #172128
Comment 5 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-11-01 23:36:31 UTC
agaffney: I dug a bit more and found some more on it.

In _pre3, there was the generic/modprobe script that was installed as the initramfs modprobe, while in _pre5, the busybox modprobe is used.

So then I theorize that the _pre3 in-busybox modprobe was probably broken already, and we just didn't run into it because of the custom modprobe script.
Comment 6 Chris Gianelloni (RETIRED) gentoo-dev 2007-11-02 00:42:14 UTC
OK.  I think I have a fix in SVN.  I simply reverted the removal of the script until we can investigate if it is needed with newer busybox versions.
Comment 7 Chris Gianelloni (RETIRED) gentoo-dev 2007-11-02 00:43:28 UTC
OK.  This should be fixed in 3.4.9_pre6.