[arch-general] [PATCH] rc.sysinit: only call modprobe once

Allan McRae allan at archlinux.org
Sun Sep 19 21:57:06 EDT 2010


On 20/09/10 11:54, Dave Reisner wrote:
> Use modprobe -a and a bash PE to filter the MODULES array.
>
> Signed-off-by: Dave Reisner<d at falconindy.com>
> ---
>   rc.sysinit |   12 ++++--------
>   1 files changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/rc.sysinit b/rc.sysinit
> index 09d5e97..4b6e1e7 100755
> --- a/rc.sysinit
> +++ b/rc.sysinit
> @@ -92,14 +92,10 @@ if /bin/pidof -o %PPID /sbin/udevd>/dev/null; then
>   fi
>
>   # Load modules from the MODULES array defined in rc.conf
> -if [[ $load_modules != off&&  -f /proc/modules ]]; then
> -    stat_busy "Loading Modules"
> -    for mod in "${MODULES[@]}"; do
> -	if [[ $mod = ${mod#!} ]]; then
> -	    /sbin/modprobe $mod
> -	fi
> -    done
> -    stat_done
> +if [[ $load_modules != off&&  -f /proc/modules ]]&&  (( ${#MODULES[@]}>  0 )); then
> +	stat_busy "Loading Modules"
> +		/sbin/modprobe -a "${MODULES[@]/#\!*/}"
> +	stat_done
>   fi
>
>   # Wait for udev uevents

Does this still work in the "null" case where there is only modules 
specified with "!" in the front?

Allan



More information about the arch-general mailing list