dasd_mod/parse-dasd-mod.sh: fixed dasd_mod param generation
parent
8b88dc7f71
commit
2268e3a32a
|
@ -2,16 +2,48 @@
|
|||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
mod_args=""
|
||||
for dasd_arg in $(getargs rd.dasd= rd_DASD= DASD=); do
|
||||
if [ -z $mod_args ]; then
|
||||
mod_args="$dasd_arg"
|
||||
|
||||
convert_dasd_param() {
|
||||
local bus_id params
|
||||
params=""
|
||||
bus_id=$1; shift
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
use_diag\=1)
|
||||
params="$params,diag"
|
||||
;;
|
||||
readonly\=1)
|
||||
params="$params,ro"
|
||||
;;
|
||||
erplog\=1)
|
||||
params="$params,erplog"
|
||||
;;
|
||||
failfast\=1)
|
||||
params="$params,failfast"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
params="${params#*,}"
|
||||
if [ -n "$params" ]; then
|
||||
echo "$bus_id($params)"
|
||||
else
|
||||
# We've already got some thing in mod_args, add to it
|
||||
mod_args="$mod_args,$dasd_arg"
|
||||
echo "$bus_id"
|
||||
fi
|
||||
}
|
||||
|
||||
for dasd_arg in $(getargs rd.dasd= rd_DASD= DASD=); do
|
||||
OLD_IFS=$IFS
|
||||
IFS=","
|
||||
set -- $dasd_arg
|
||||
IFS=$OLD_IFS
|
||||
dasd_arg=$(convert_dasd_param "$@")
|
||||
mod_args="$mod_args,$dasd_arg"
|
||||
done
|
||||
|
||||
if [ ! -z $mod_args ]; then
|
||||
mod_args="${mod_args#*,}"
|
||||
|
||||
if [ -n "$mod_args" ]; then
|
||||
[ -d /etc/modprobe.d ] || mkdir -m 0755 -p /etc/modprobe.d
|
||||
echo "options dasd_mod dasd=$mod_args" >> /etc/modprobe.d/dasd_mod.conf
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue