Allow per kernel version module arguments.

This commit is contained in:
Roy Marples 2008-03-25 08:31:48 +00:00
parent 0347f01345
commit 08aff6ef44
2 changed files with 16 additions and 4 deletions

View File

@ -5,8 +5,11 @@
#modules_2_6="tun"
#modules="ohci1394"
# Give the modules some arguments if needed.
# Give the modules some arguments if needed, per version if necessary.
#module_ieee1394_args="debug"
#module_ieee1394_args_2_6_23_gentoo_r5="ieee1394 ohci1394"
#module_ieee1394_args_2_6_23="tun ieee1394"
#module_ieee1394_args_2_6="tun"
# You should consult your kernel documentation and configuration
# for a list of modules and their options.

View File

@ -23,7 +23,7 @@ start()
x=${KV#*.*.}
local KV_MICRO=${x%%-*}
local list= x= args= cnt=0
local list= x= xx= y= args= cnt=0
for x in "${KV}" \
${KV_MAJOR}.${KV_MINOR}.${KV_MICRO} \
${KV_MAJOR}.${KV_MINOR} \
@ -35,7 +35,16 @@ start()
for x in ${list}; do
ebegin "Loading module ${x}"
eval args=\$module_$(shell_var "${x}")_args
xx=$(shell_var "${x}")
for y in "${KV}" \
${KV_MAJOR}.${KV_MINOR}.${KV_MICRO} \
${KV_MAJOR}.${KV_MINOR} \
; do
eval args=\$module_${xx}_args_$(shell_var "${y}")
[ -n "${args}" ] && break
done
done
[ -z "${args}" ] && eval args=\$module_${xx}_args
eval modprobe -q "${x}" "${args}"
eend $? "Failed to load ${x}" && cnt=$((${cnt} + 1))
done