The kernel's Makefile uses /sbin/depmod[1] to create modules.dep (which is needed for modprobe to load modules) and other files in the /lib/modules/<kernelver>/ directory during make modules_install. With kmod-9-r1/-r2 /sbin/depmod isn't created anymore, causing the kernel's build system to silently fail that step. Which subsequently breaks modprobe in that kernel if it doesn't already have appropriate modules.dep (and no ebuilds using linux-mod.eclass are installed, which runs depmod itself). I'm assuming like modprobe depmod should be in /sbin as well, so adding: dosym /usr/bin/kmod /sbin/depmod (and possibly removing depmod from the list installed to /usr/bin) to kmod's src_install fixes the issue here. [1]: Pandia linux # grep "DEPMOD" Makefile DEPMOD = /sbin/depmod quiet_cmd_depmod = DEPMOD $(KERNELRELEASE) cmd_depmod = $(CONFIG_SHELL) $(srctree)/scripts/depmod.sh $(DEPMOD) \ (Interestingly there's also this comment in the kernel's Makefile: # This depmod is only for convenience to give the initial # boot a modules.dep even before / is mounted read-write. However the # boot script depmod is the master version. I'm assuming that's not the case for gentoo currently atleast though (nothing else here created modules.dep after booting anyway, though that was with depmod in /usr/bin), correct me if I'm wrong and something else is supposed to be creating them) Reproducible: Always Steps to Reproduce: 1. Build a kernel that would create a new dir in /lib/modules with a few modules enabled (LOCALVERSION might be useful) 2. make modules_install 3. ls /lib/modules/new_kernel_version Actual Results: Pandia linux # make modules_install [...] DEPMOD 3.4.3-gentoo-testing Pandia linux # ls /lib/modules/3.4.3-gentoo-testing/ build kernel modules.builtin modules.order source (modules don't get loaded automatically and modprobe fails to load modules while booted in that kernel - insmod works however) Expected Results: Pandia linux # make modules_install [...] DEPMOD 3.4.3-gentoo-testing Pandia linux # ls /lib/modules/3.4.3-gentoo-testing/ build modules.builtin modules.devname modules.symbols.bin kernel modules.builtin.bin modules.order source modules.alias modules.dep modules.softdep modules.alias.bin modules.dep.bin modules.symbols (modules get loaded automatically and modprobe loads modules properly) emerge --info: Portage 2.1.11.7 (default/linux/amd64/10.0/desktop, gcc-4.6.3, glibc-2.15-r2, 3.5.0-rc7-drm-intel-next-1+ x86_64) ================================================================= System uname: Linux-3.5.0-rc7-drm-intel-next-1+-x86_64-Intel-R-_Core-TM-_i5-3570K_CPU_@_3.40GHz-with-gentoo-2.1 Timestamp of tree: Sun, 15 Jul 2012 07:30:01 +0000 app-shells/bash: 4.2_p36 dev-lang/python: 2.7.3-r2, 3.2.3-r1 dev-util/cmake: 2.8.8-r3 dev-util/pkgconfig: 0.27 sys-apps/baselayout: 2.1-r1 sys-apps/openrc: 0.10.5 sys-apps/sandbox: 2.6 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.11.5, 1.12.2 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.5.3-r2, 4.6.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r3 sys-kernel/linux-headers: 3.4-r1 (virtual/os-headers) sys-libs/glibc: 2.15-r2 Repositories: gentoo tfkyles_projects tfkyles_randomness tfkyle_gst ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-g -O2 -pipe -march=core-avx-i" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="${EPREFIX}/etc/gconf /etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-g -O2 -pipe -march=core-avx-i" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--quiet-build=n" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles news parse-eapi-ebuild-head protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://mirror.csclub.uwaterloo.ca/gentoo-distfiles" LANG="en_CA.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/home/kyle/Projects/ebuilds/projects /home/kyle/Projects/ebuilds/randomness /home/kyle/Projects/ebuilds/gst" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 apache2 avahi avx bash-completion berkdb bluetooth branding bzip2 cairo calendar caps ccdb cdda cdparanoia cdr cjk cli consolekit cracklib crypt css cups curl cxx dbus djvu doc dri dts dv dvb dvd dvdr emboss encode examples exif fam fbcon ffmpeg firefox flac fontconfig fortran ftp fuse gd gdbm geoip ggi gif gmp gnutls gphoto2 gpm gstreamer gtk handbook iconv icu idn ieee1394 imap ipv6 jabber jingle jit joystick jpeg jpeg2k kde kontact lame lcms libffi libnotify libsamplerate libwww lm_sensors lua lzma mad matroska mime mmap mms mmx mng modules mp3 mp4 mpeg msn mudflap multilib ncurses nls nntp nptl ogg opengl openmp pam pango pcre pdf perl plasma png policykit ppds pppd python qt3support qt4 quicktime readline rss samba sasl sdl semantic-desktop session simplexml smp sndfile snmp sockets sound speex spell sqlite sqlite3 sse sse2 sse3 sse4 sse4_1 ssl ssse3 startup-notification subversion svg taglib tcpd theora threads tiff tk truetype udev udisks unicode upower usb v4l vcd videos vim-syntax vnc vorbis vpx webkit wmf wxwidgets x264 xattr xcb xml xmlrpc xmpp xorg xpm xsl xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="canon ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel radeon vesa modesetting" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
I can confirm this issue. I wasn't able to load any modules with modprobe after a kernel update with kmod-9-r2. Running depmod -a manually after module installation fixes the problem.
Confirming and classifying as "critical" since this renders systems unbootable :/
In longterm, we need to get a patch to kernel's Makefile to not suck so much and just try $PATH too In shortterm, we need the depmod symlink moved back where it was with a comment to this bug in the ebuild
(In reply to comment #3) > In shortterm, we need the depmod symlink moved back where it was with a > comment to this bug in the ebuild done > In longterm, we need to get a patch to kernel's Makefile to not suck so much > and just try $PATH too opening new bug for this
bug 426992 for next step