Re: Use dmraid instead of setting up dm tables ourselves (fixes dmraid10)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I know you already commited, but, just a little comment...
On Mon, Feb 16, 2009 at 04:33:24PM +0100, Hans de Goede wrote:
> Hi all,
>
> Use dmraid instead of setting up dm tables ourselves, this fixes stacked
> dmraid's like raid10. As an added bonus this means dmraid will also stop
> breaking when the disk numbering changes. This patch uses the new
> --rm_partitions dmraid option to tell the kernel to remove the partitions
> from the used disks, stopping programs probing partitons causing IO-errors
> like those reported in bug 475384
>
> Note that this patch also removes part of the (broken) multipath code, which
> was in the same code loop as the dyi dm table creation code for dmraid. This
> is not a problem, as multipath has never worked in Fedora.
> ---
>  mkinitrd |  117 +++++++++++--------------------------------------------------
>  1 files changed, 21 insertions(+), 96 deletions(-)
>
> diff --git a/mkinitrd b/mkinitrd
> index 211be1f..2ce03a7 100755
> --- a/mkinitrd
> +++ b/mkinitrd
> @@ -60,7 +60,7 @@ PROBE="yes"
>  MODULES=""
>  GRAPHICSMODS=""
>  PREMODS=""
> -DMDEVS=""
> +DMRAIDS=""
>  ncryptodevs=0
>  ncryptoparts=0
>  ncryptolvs=0
> @@ -130,10 +130,6 @@ qpopd() {
>      popd >/dev/null 2>&1
>  }
>
> -dm_get_uuid() {
> -    echo nash-dm get_uuid "$1" | /sbin/nash --force --quiet
> -}
> -
>  resolve_device_name() {
>      echo nash-resolveDevice "$1" | /sbin/nash --forcequiet
>  }
> @@ -560,6 +556,7 @@ handledm() {
>  EOF
>      local name=$(dmsetup info --noheadings -c -j $major -m $minor -o name)
>      local vg=$(lvshow "/dev/mapper/$name")
> +    local raids=$(/sbin/dmraid -s -craidname 2>/dev/null | grep -vi "no 

Is it not better to have the dmraid command without the full path?

> raid disks")
>      if [ -n "$vg" ]; then
>          vg=`echo $vg` # strip whitespace
>          case " $vg_list " in
> @@ -569,6 +566,17 @@ EOF
>              ;;
>          esac
>      fi
> +    for raid in $raids ; do
> +        if [ "$raid" == "$name" ]; then
> +            case " $DMRAIDS " in
> +                *" $raid "*) ;;
> +                *)  DMRAIDS="$DMRAIDS $raid"
> +                    [ -z "$nodmraid" ] && find_base_dm_mods
> +                    ;;
> +            esac
> +            break
> +        fi

I just say that little issue before I realised that it was commited. :)

regards


-- 
Joel Andres Granados
Brno, Czech Republic, Red Hat.

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux