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

Re: linux-image-3.9-0.bpo.1-amd64 efistub fails to activate LVM



As a test I decided to do away with the contents in
/usr/share/initramfs-tools/scripts/local-top/lvm2 and replaced it with
a simple configuration as follows

#!/bin/sh

modprobe -q dm-mod

lvm vgchange -aly --ignorelockingfailure

exit 0

Ran update-initramfs -u and copied /vmlinuz & /initrd.img to
/boot/efi/EFI/debian/

Rebooted and it booted stright up after activating my root lvm fine.
Obviously this hack is not a solution.

So does this point towards an issue in the version of initramfs-tools
in wheezy-backports?  Specifically the
/usr/share/initramfs-tools/scripts/local-top/lvm2 script.  It
certainly fails to activate the root lvm.

I'll have a closer look but if anyone can see a problem with the
script I would be interested to know.

cat /usr/share/initramfs-tools/scripts/local-top/lvm2
#!/bin/sh

PREREQ="mdadm mdrun multipath"

prereqs()
{
    echo "$PREREQ"
}

case $1 in
# get pre-requisites
prereqs)
    prereqs
    exit 0
    ;;
esac

activate_vg()
{
    local dev="$1"

    # Make sure that we have a non-empty argument
    if [ -z "$dev" ]; then
        return 1
    fi

    # Take care of lilo boot arg, risky activating of all vg
    case "$dev" in
    fe[0-9]*)
        lvm vgchange -aly --ignorelockingfailure
        exit 0
        ;;
    # FIXME: check major
    /dev/root)
        lvm vgchange -aly --ignorelockingfailure
        exit 0
        ;;
    esac

    # Make sure that we have a d-m path
    dev="${dev#/dev/mapper/}"
    if [ "$dev" = "$1" ]; then
        return 1
    fi

    eval $(dmsetup splitname --nameprefixes --noheadings --rows "$dev")

    if [ "$DM_VG_NAME" ] && [ "$DM_LV_NAME" ]; then
        lvm lvchange -aly --ignorelockingfailure "$DM_VG_NAME/$DM_LV_NAME"
        rc=$?
        if [ $rc = 5 ]; then
            echo "Unable to find LVM volume $DM_VG_NAME/$DM_LV_NAME"
        fi
    fi
}

if [ ! -e /sbin/lvm ]; then
    exit 0
fi

modprobe -q dm-mod

activate_vg "$ROOT"
activate_vg "$resume"

exit 0


Reply to: