summaryrefslogtreecommitdiff
path: root/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh
diff options
context:
space:
mode:
Diffstat (limited to 'meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh')
-rw-r--r--meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh26
1 files changed, 19 insertions, 7 deletions
diff --git a/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh b/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh
index 62be89f03..e61ede911 100644
--- a/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh
+++ b/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh
@@ -128,18 +128,25 @@ try_wget() {
debug_takeover() {
echo "$@"
- test -n "$@" && echo Enter password to try to manually fix.
+
+ if ! grep -w enable-initrd-debug-sh "$optfile"
+ then
+ echo "Fatal error, triggering kernel panic!"
+ exit 1
+ fi
+
+ test -n "$@" && echo Try to manually fix.
cat << HERE
After fixing run exit to continue this script, or reboot -f to retry, or
touch /takeover and exit to become PID 1 allowing editing of this script.
HERE
- while ! sulogin && ! test -f /takeover
+ while ! /bin/sh && ! test -f /takeover
do
- echo getty failed, retrying
+ echo /bin/sh failed, retrying
done
- # Touch /takeover in the above getty to become pid 1
+ # Touch /takeover in the above shell to become pid 1
if test -e /takeover
then
cat << HERE
@@ -208,7 +215,12 @@ echo rofs = $rofs $rofst rwfs = $rwfs $rwfst
if grep -w debug-init-sh $optfile
then
- debug_takeover "Debug initial shell requested by command line."
+ if grep -w enable-initrd-debug-sh "$optfile"
+ then
+ debug_takeover "Debug initial shell requested by command line."
+ else
+ echo "Need to also add enable-initrd-debug-sh for debug shell."
+ fi
fi
if test "x$consider_download_files" = xy &&
@@ -394,7 +406,7 @@ then
Mounting read-write $rwdev filesystem failed. Please fix and run
mount $rwdev $rwdir -t $rwfst -o $rwopts
-to to continue, or do change nothing to run from RAM for this boot.
+or perform a factory reset with the clean-rwfs-filesystem option.
HERE
debug_takeover "$msg"
fi
@@ -411,7 +423,7 @@ do
Unable to confirm /sbin/init is an executable non-empty file
in merged file system mounted at /root.
-Change Root test failed! Invoking emergency shell.
+Change Root test failed!
HERE
debug_takeover "$msg"
done