Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 66692 - /sbin/generate-modprobe.conf fails on boot with kernel 2.6 if /tmp not on root partition, leaving an empty /etc/modprobe.conf
Summary: /sbin/generate-modprobe.conf fails on boot with kernel 2.6 if /tmp not on roo...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-07 14:47 UTC by Joachim Fenkes
Modified: 2006-10-04 23:50 UTC (History)
1 user (show)

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


Attachments
Proposed fix for this bug (generate-modprobe.conf.patch,488 bytes, patch)
2004-10-07 14:54 UTC, Joachim Fenkes
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Joachim Fenkes 2004-10-07 14:47:20 UTC
When booting up using a 2.6.8.1 vanilla kernel, /etc/init.d/modules is run before all filesystems are mounted. If this causes /tmp (-> /var/tmp) to not be available, for example if /var is mounted from its own partition (as is the case on our machine), /sbin/generate-modprobe.conf, run by modules-update, fails, leaving an empty /etc/modprobe.conf.

As a consequence, almost all subsequent start scripts fail because a required module cannot be found. Running modules-update as root fixes this, but unattended boot is impossible.

Reproducible: Always
Steps to Reproduce:
1. Install development-sources-2.6.8.1, configure, compile and install the kernel.
2. Create an own partition for /var, move all /var content there, put it into fstab. Make sure there's no /var/tmp on your root partition.
3. Reboot and your start scripts should be unable to load any modules.




Portage 2.0.50-r11 (default-x86-1.4, gcc-3.3.4, glibc-2.3.3.20040420-r1, 2.4.27)
=================================================================
System uname: 2.4.27 i686 AMD Duron(tm) processor
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon -O2 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/
ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/
http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/
ftp://ftp.easynet.nl/mirror/gentoo//
http://194.83.57.11/sites/www.ibiblio.org/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/overlay"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="3dnow aalib acpi acpi4linux apache2 apm berkdb bitmap-fonts crypt gdbm gif
imagemagick jpeg libwww mmx ncurses nopri nozaptel pam perl png python readline
slang ssl tcpd x86 xprint zlib"
Comment 1 Joachim Fenkes 2004-10-07 14:54:34 UTC
Created attachment 41326 [details, diff]
Proposed fix for this bug

A possible fix to this (which works for me) is letting generate-modprobe.conf
create its temporary files somewhere on the root partition, for example
/etc/modules.d/. See attached patch for details.
Comment 2 Daniel Drake (RETIRED) gentoo-dev 2004-10-08 11:17:20 UTC
Not a kernel bug. generate-modprobe.conf is provided by module-init-tools.
Comment 3 Francois Guimond 2004-11-07 09:49:13 UTC
Patch fixed it for me too.  Had the same problem with generate-modprobe.conf, but it wasn't until I saw this bug report that I realized it was due to my /var filesystem being on a separate partition (and /tmp being a symlink to /var/tmp).
Comment 4 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2006-10-04 23:50:19 UTC
closing old bugs - this seems solved already - my machines work properly with a seperate /tmp.