commit 94da85dbcdd525e895aa1719965ee3041a5f5ce5
Author: Elan Ruusamäe <[email protected]>
Date:   Wed May 14 00:21:16 2014 +0300

    initrd_gen_setrootdev: retry ls -l for busybox 1.22, avoid writing 0 to 
real-root-dev

 geninitrd | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)
---
diff --git a/geninitrd b/geninitrd
index 8773697..213cda9 100755
--- a/geninitrd
+++ b/geninitrd
@@ -855,11 +855,17 @@ initrd_gen_setrootdev() {
        add_linuxrc <<-'EOF'
                if [ "${ROOT##/dev/}" != "${ROOT}" ]; then
                        rootnr="$(busybox awk -v rootnode="${ROOT##/dev/}" '$4 
== rootnode { print 256 * $1 + $2 }' /proc/partitions)"
-                       # fallback to ls
-                       if [ -z "$rootnr" -a -e "$ROOT" ]; then
+                       # fallback to ls, try two different formats
+                       # 
http://lists.pld-linux.org/mailman/pipermail/pld-devel-en/2014-May/023915.html
+                       if [ "${rootnr:-0}" = 0 -a -e "$ROOT" ]; then
+                               # busybox up to 1.22
                                rootnr="$(busybox ls -lL ${ROOT} | busybox awk 
'{if (/^b/) { print 256 * $3 + $4; }}')"
                        fi
-                       if [ "$rootnr" -gt 0 ]; then
+                       if [ "${rootnr:-0}" = 0 -a -e "$ROOT" ]; then
+                               # busybox 1.22 and upwards
+                               rootnr="$(busybox ls -lL ${ROOT} | busybox awk 
'{if (/^b/) { print 256 * $5 + $6; }}')"
+                       fi
+                       if [ "${rootnr:-0}" -gt 0 ]; then
                                echo "$rootnr" > /proc/sys/kernel/real-root-dev
                        fi
                fi
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/projects/geninitrd.git/commitdiff/94da85dbcdd525e895aa1719965ee3041a5f5ce5

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to