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

Dave Reisner d at falconindy.com
Sun Sep 19 21:54:25 EDT 2010


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
-- 
1.7.2.3



More information about the arch-general mailing list