From f7b1af3a064761eefb77beb29528ac3058f2af28 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sat, 12 Oct 2019 17:50:55 -0400 Subject: [PATCH] doc: Document new stage-1-to-2 failure reporting --- doc/in-depth/index.adoc | 4 ++++ doc/in-depth/stage-1.adoc | 26 ++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 doc/in-depth/stage-1.adoc diff --git a/doc/in-depth/index.adoc b/doc/in-depth/index.adoc index cb2170e3..9eecca99 100644 --- a/doc/in-depth/index.adoc +++ b/doc/in-depth/index.adoc @@ -7,6 +7,10 @@ include::_support/common.inc[] Index of in-depth topics. +== Boot + +* <> + == Android-Based Devices * <> diff --git a/doc/in-depth/stage-1.adoc b/doc/in-depth/stage-1.adoc new file mode 100644 index 00000000..23682090 --- /dev/null +++ b/doc/in-depth/stage-1.adoc @@ -0,0 +1,26 @@ += Notes about `stage-1` +include::_support/common.inc[] + +== What is stage-1? + +This is what is also referred as `initrd`, or `initramfs`. `stage-1` refers to +the fact that this is the first part of the system that gets run once the kernel +has been started. + +== About "sad phone" screens + +It may happen that you have a "sad phone" screen when booting. + +This means that a fatal error has happened. + +When there is no screen logging available for the device, the general case of +error has been codified as a background color. + + * Yellow (`0xFFFF00`) means that mounting the root filesystem was not possible. + * Fuchsia (`0xFF00FF`) means that mounting succeeded, but no compatible generation was found to boot. + * Red (`0xFF0000`) means that executing (`exec`) and switching to the found generation's init failed. + +It may happen that the boot seemingly or actually hangs before a "sad phone" +screen appears. In those instances, it means something else earlier kept the +early init scripts to continue. In the future, better logging and status +reporting will be added to keep track of early failures.