FS#24766 - [mkinitcpio] modprobe usage output on boot
Attached to Project:
Arch Linux
Opened by xduugu (xduugu) - Saturday, 18 June 2011, 08:43 GMT
Last edited by Eric Belanger (Snowman) - Saturday, 09 July 2011, 18:50 GMT
Opened by xduugu (xduugu) - Saturday, 18 June 2011, 08:43 GMT
Last edited by Eric Belanger (Snowman) - Saturday, 09 July 2011, 18:50 GMT
|
Details
Description:
Since commit 7a165, modprobe is run on $MODULES even if it is empty as in my case. This results in a modprobe usage message on boot. https://projects.archlinux.org/mkinitcpio.git/commit/?id=7a165fb842eb1dcfdd9aa27b74354245d6980d19 Additional info: * mkinitcpio >= 0.6.14-1 * MODULES has to be empty in /etc/mkinitcpio.conf Steps to reproduce: - Empty $MODULES and rebuild the kernel image OR - just run "/sbin/modprobe -qab" in a terminal Proposed solution: Check if $MODULES actually contains any non-space characters. [ -n "${MODULES// /} ] By the way, earlymodules suffers from the same issue if it is set to something like " " which is not empty, but not applicable for modprobe as well. |
This task depends upon
Closed by Eric Belanger (Snowman)
Saturday, 09 July 2011, 18:50 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed in mkinitcpio >= 0.7.1. mkinitcpio < 0.7 was not affected.
Saturday, 09 July 2011, 18:50 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed in mkinitcpio >= 0.7.1. mkinitcpio < 0.7 was not affected.
[ -n "${MODULES// /} ]
which should be
[ -n "${MODULES// /}" ]
empty or spaces-only MODULES → -n returns false
at least one single non-space character → -n is true
$ MODULES=" "
$
$
$ [ -n "$MODULES" ] && /sbin/modprobe -qab $MODULES
Usage: /sbin/modprobe [-v] [-V] [-C config-file] [-d <dirname> ] [-n] [-i] [-q] [-b] [-o <modname>] [ --dump-modversions ] <modname> [parameters...]
/sbin/modprobe -r [-n] [-i] [-v] <modulename> ...
/sbin/modprobe -l -t <dirname> [ -a <modulename> ...]
$
$
$ [ -n "${MODULES// /}" ] && /sbin/modprobe -qab $MODULES
$
$ MODULES="uvcvideo"
$ lsmod | grep -m1 uvcvideo
$ [ -n "${MODULES// /}" ] && /sbin/modprobe -qab $MODULES
$ lsmod | grep -m1 uvcvideo
uvcvideo 62079 0
$