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

Bug#392764: partman: [powerpc] RAID support is broken on powermac hardware (64bit, XServe G5)



On Fri, Oct 13, 2006 at 10:56:08PM +0200, Frans Pop wrote:
> On Friday 13 October 2006 13:43, Sven Luther wrote:
> > As the title says, an install on my XServe G5, with two brand new 320GB
> > sata disks, fails. I can manually setup the RAID partitions, but when i
> > go into the raid tool, it tells me something about the RAID flag not
> > being found or something.
> 
> That is not very helpful. Please provide exact error message.
> 
> Please add 'set -x' in /lib/partman/definitions.sh, reproduce error and 
> send full log (gzipped) to BR.

Ok, i think i found the culprit of this bug, the message is comming from
package mdcfg, file mdcfg.sh. its the mdcfg/noparts message.

# this will set PARTITIONS and NUM_PART global variables.
get_partitions() {
        PARTITIONS=""

        # Get a list of RAID partitions. This only works if there is no
        # filesystem on the partitions, which is fine by us.
        RAW_PARTITIONS=`/usr/lib/partconf/find-partitions --ignore-fstype 2>/dev/null | grep "[[:space:]]RAID[[:space:]]" |cut -f1`;

        # Convert it into a proper list form for a select question
        # (comma seperated)
        NUM_PART=0
        for i in ${RAW_PARTITIONS}; do
                DEV=`echo ${i}|sed -e "s/\/dev\///"`
                REALDEV=$(mapdevfs "$i")
                MAPPEDDEV=$(echo "$REALDEV" | sed -e "s/\/dev\///")

                if grep -q "\(${DEV}\|${MAPPEDDEV}\)" /proc/mdstat; then
                        continue
                fi

                if [ -z "${PARTITIONS}" ] ; then
                        PARTITIONS="$REALDEV"
                else
                        PARTITIONS="${PARTITIONS}, $REALDEV"
                fi
                NUM_PART=$(($NUM_PART + 1))
        done

        if [ -z "${PARTITIONS}" ] ; then
                db_input critical mdcfg/noparts
                db_go
                return 1
        fi
        return 0
}

As you can see, the find-partitions call returns nothing on the box, even
though the partitions are listed in partman.

Since find-partitions is using parted, this may be correlated to the bug about
parted not listing the partitions on the device :

  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=392767
  #392767: [mac] parted is unable to reread partition tables created by d-i/partman.

the partition tables show up after the reboot though, which is rather strange.
Maybe some problem with devfs compatibility stuff ? Or a missing kernel module ? 

Friendly,

Sven Luther






Reply to: