* Martin Michlmayr <t...@cyrius.com> [2010-06-08 21:31]:
> This is the output from 'mount', and here's what i-t does:
> 
>     eval "$(mount | awk '/\/dev\// {if ($3 == "/") {print "root=" $1 
> "\nFSTYPE=" $5; exit}}')"
> 
> it looks for something with /dev/ in it.  In your case, this does't
> match so root= and FSTYPE= are empty.  I think we should simply add a
> check to i-t at this point to produce an error when $root is empty.

[PATCH] Produce an error when root cannot be determined with MODULES=dep

A lot of code in dep_add_modules() uses $root.  Therefore, produce an
error message if we cannot determine the root device.

Signed-off-by: Martin Michlmayr <t...@cyrius.com>

diff --git a/hook-functions b/hook-functions
index 6a6e233..154ae3e 100644
--- a/hook-functions
+++ b/hook-functions
@@ -226,6 +226,11 @@ dep_add_modules()
 
        # findout root block device + fstype
        eval "$(mount | awk '/\/dev\// {if ($3 == "/") {print "root=" $1 
"\nFSTYPE=" $5; exit}}')"
+       if [ -z "$root" ]; then
+               echo "mkinitramfs: failed to determine root device"
+               echo "mkinitramfs: workaround is MODULES=most"
+               echo "Error please report bug on initramfs-tools and include 
the output of 'mount'"
+       fi
 
        # handle ubifs and return since ubifs root is a char device but
        # most of the commands below only work with block devices.

-- 
Martin Michlmayr
http://www.cyrius.com/



-- 
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20100608194308.ga31...@jirafa.cyrius.com

Reply via email to