Package: initrd-tools
Version: 0.1.74
Severity: important

Devices such as /dev/cciss/c0d0p1 used to have their names mangled in
/sys/block with '.' in place of '/', producing paths like
/sys/block/cciss.c0d0/cciss.c0d0p1/dev. However, current kernels use '!'
rather than '.' as the mangling character, so you get
/sys/block/cciss!c0d0/cciss!c0d0p1/dev. See
http://mail.nl.linux.org/linux-mm/2003-12/msg00087.html for some related
comments, fixing another part of the kernel to cope with this.

The upshot is that initrds generated by initrd-tools fail to figure out
how to mount root filesystems on CCISS devices.

/usr/share/initrd-tools/init copes with the old naming, like this:

        IFS=/
        set -f
        set +f ${root#/dev/}
        IFS=.
        root=$*
        unset IFS
        try_name "$root" && return

It's probably best for us to try both. The following patch (actually
against 0.1.70 rather than 0.1.74, but should still apply) works for me:

  http://www.no-name-yet.com/patches/initrd-tools.sys-block.diff

Cheers,

-- 
Colin Watson                                       [EMAIL PROTECTED]


Reply via email to