Depending on how the dasd_mod module was loaded, our device could have
already been marked as online or offline. We need to make the sysecho
sensitive to this and not fail if the attribute we're trying to set has
already been set.
type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
function sysecho () {
- file=$1
+ file="$1"
shift
local i=1
while [ $i -le 10 ] ; do
break
fi
done
- [ -f "$file" ] && echo $* > $file
+ local status
+ read status < "$file"
+ if [[ ! $status == $* ]]; then
+ [ -f "$file" ] && echo $* > "$file"
+ fi
}
function dasd_settle() {