commit:     9539ed41bb78bd6c3630b7747593090afbf14e6c
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 15 22:19:57 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Jul 15 22:19:57 2019 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=9539ed41

linuxrc: Add rootdelay timeout indicator

Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 defaults/initrd.scripts |  8 ++++++++
 defaults/linuxrc        | 12 +++++++++++-
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts
index c4a037b..a47b1ed 100644
--- a/defaults/initrd.scripts
+++ b/defaults/initrd.scripts
@@ -882,6 +882,14 @@ good_msg() {
        [ "$2" != '1' ] && printf "%b\n" "${GOOD}>>${NORMAL}${BOLD} 
${msg_string} ${NORMAL}"
 }
 
+good_msg_n() {
+       [ -n "${QUIET}" ] && [ -z "${DEBUG}" ] && return 0
+
+       msg_string=${1}
+       msg_string="${msg_string:-...}"
+       [ "$2" != '1' ] && printf "%b" "${GOOD}>>${NORMAL}${BOLD} ${msg_string}"
+}
+
 bad_msg() {
        msg_string=${1}
        msg_string="${msg_string:-...}"

diff --git a/defaults/linuxrc b/defaults/linuxrc
index d84cc65..f1cbec1 100644
--- a/defaults/linuxrc
+++ b/defaults/linuxrc
@@ -593,11 +593,12 @@ then
 fi
 
 # Determine root device
-good_msg 'Determining root device ...'
 ROOTDELAY_100MSEC=1
 [ -n "${ROOTDELAY}" ] && ROOTDELAY_100MSEC=$((${ROOTDELAY} * 10))
 while true
 do
+       good_msg_n 'Determining root device ...'
+
        while [ "${got_good_root}" != '1' ]
        do
                # Start of sleep loop waiting on root
@@ -624,6 +625,7 @@ do
                                        then
                                                got_good_root=1
                                                REAL_ROOT="${ROOT_DEV}"
+                                               echo
                                                good_msg "Detected 
real_root=${ROOT_DEV}"
                                                break
                                        fi
@@ -643,6 +645,7 @@ do
                                                        got_good_root=1
                                                        REAL_ROOT=${ROOT_DEV}
                                                        ROOTFSTYPE=zfs
+                                                       echo
                                                        good_msg "Detected 
real_root=${ROOT_DEV}"
                                                        break
                                                else
@@ -661,6 +664,7 @@ do
                                                                        
got_good_root=1
                                                                        
REAL_ROOT=${i}
                                                                        
ROOTFSTYPE=zfs
+                                                                       echo
                                                                        
good_msg "Detected real_root=${ROOT_DEV}"
                                                                        break
                                                                fi
@@ -682,6 +686,12 @@ do
                        then
                                let ROOTDELAY_100MSEC=${ROOTDELAY_100MSEC}-1
                                sleep 0.1s
+
+                               let 
ROOTDELAY_100MSEC_MODULO=${ROOTDELAY_100MSEC}%10
+                               if [ ${ROOTDELAY_100MSEC_MODULO} = 0 ]
+                               then
+                                       printf "."
+                               fi
                        fi
                done  # End of sleep loop waiting on root
 

Reply via email to