From c4e48eaea1b31a8c70af43a400eda7948cfecc94 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Thu, 16 Feb 2012 11:48:17 +0100 Subject: [PATCH] dracut-functions: factor out all get_maj_min() variants --- dracut-functions | 15 +++------------ 1 files changed, 3 insertions(+), 12 deletions(-) diff --git a/dracut-functions b/dracut-functions index 41d752e..0b24889 100755 --- a/dracut-functions +++ b/dracut-functions @@ -212,11 +212,7 @@ find_block_device() { [[ $_dev != ${_dev#UUID=} ]] && _dev=/dev/disk/by-uuid/${_dev#UUID=} [[ $_dev != ${_dev#LABEL=} ]] && _dev=/dev/disk/by-label/${_dev#LABEL=} [[ -b $_dev ]] || return 1 # oops, not a block device. - ls -nLl "$_dev" | { - read _x _x _x _x _maj _min _x - _maj=${_maj//,/} - echo $_maj:$_min - } && return 0 + get_maj_min "$_dev" && return 0 fi done < /etc/fstab @@ -281,11 +277,6 @@ check_block_and_slaves() { return 1 } -get_numeric_dev() { - local _x _maj _min - ls -lH "$1" | { read _x _x _x _x _maj _min _x; printf "%d:%d" ${_maj%%,} $_min; } -} - # ugly workaround for the lvm design # There is no volume group device, # so, there are no slave devices for volume groups. @@ -295,7 +286,7 @@ get_numeric_dev() { check_vol_slaves() { local _lv _vg _pv for i in /dev/mapper/*; do - _lv=$(get_numeric_dev $i) + _lv=$(get_maj_min $i) if [[ $_lv = $2 ]]; then _vg=$(lvm lvs --noheadings -o vg_name $i 2>/dev/null) # strip space @@ -303,7 +294,7 @@ check_vol_slaves() { if [[ $_vg ]]; then for _pv in $(lvm vgs --noheadings -o pv_name "$_vg" 2>/dev/null) do - check_block_and_slaves $1 $(get_numeric_dev $_pv) && return 0 + check_block_and_slaves $1 $(get_maj_min $_pv) && return 0 done fi fi