From 856d039ba4716ba080fc8d823b3329a4470a60ef Mon Sep 17 00:00:00 2001 From: Hannes Reinecke Date: Wed, 18 Jun 2014 15:10:46 +0200 Subject: [PATCH] 95dasd_rules: enable parsing of rd.dasd= commandline parameter Dracut documents the 'rd.dasd=' parameter, so we should be enabling the usage of this parameter, too. Signed-off-by: Hannes Reinecke --- modules.d/95dasd_rules/parse-dasd.sh | 37 ++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/modules.d/95dasd_rules/parse-dasd.sh b/modules.d/95dasd_rules/parse-dasd.sh index eb4fa227..5be77c81 100755 --- a/modules.d/95dasd_rules/parse-dasd.sh +++ b/modules.d/95dasd_rules/parse-dasd.sh @@ -55,3 +55,40 @@ for dasd_arg in $(getargs root=) $(getargs resume=); do fi ) done + +for dasd_arg in $(getargs rd.dasd=); do + ( + IFS="," + set -- $dasd_arg + unset IFS + while (($# > 0)); do + case $1 in + autodetect|probeonly) + shift + ;; + *-*) + range=$1 + IFS="-" + set -- $range + start=${1#0.0.} + shift + end=${1#0.0.} + shift + unset IFS + for dev in $(seq $(( 10#$start )) $(( 10#$end )) ) ; do + create_udev_rule $(printf "0.0.%04d" "$dev") + done + ;; + *) + dev=${1%(ro)} + if [ "$dev" != "$1" ] ; then + ro=1 + fi + dev=${dev#0.0.} + create_udev_rule $(printf "0.0.%04d" $(( 10#$dev )) ) + shift + ;; + esac + done + ) +done