diff options
| author | Mark Salyzyn <salyzyn@google.com> | 2019-07-29 09:35:18 -0700 | 
|---|---|---|
| committer | Mark Salyzyn <salyzyn@google.com> | 2019-07-29 11:56:51 -0700 | 
| commit | beb6abedcc23b848323ff2b54d05054ae5126a61 (patch) | |
| tree | a2c6512c0f4791cc8c2ef8bff877f878d605935f /libutils/ProcessCallStack_fuzz.cpp | |
| parent | 244d9b8fb968b9f0289ac69d723a4f760d1c1b91 (diff) | |
init: first stage init tie stdout and stderr to /dev/kmsg
It is exceedingly difficult to debug I/O and filesystem corruption
issues during first and selinux initialization stage init.  By
redirecting stderr, and for good measure stdout, to /dev/kmsg in
first stage init before it exec's "/system/bin/init" we can see
the filesystem corruption errors more clearly.
Before this we would see:
init: Skipped setting INIT_AVB_VERSION (not in recovery mode)
Kernel panic - not syncing: Attempted to kill init! exitcode=0x...
and then wonder why?
After this change we can see:
init: Skipped setting INIT_AVB_VERSION (not in recovery mode)
libc: Fatal signal 5 (SIGTRAP), code 128 (SI_KERNEL), fault addr...
Kernel panic - not syncing: Attempted to kill init! exitcode=0x...
-or-
init: Skipped setting INIT_AVB_VERSION (not in recovery mode)
linker: CANNOT LINK EXECUTABLE "/system/bin/init": cannot locate symbol...
Kernel panic - not syncing: Attempted to kill init! exitcode=0x...
(NB: with stutter removed because of stdout and stderr)
Silence from these sources otherwise on successful execution.
Test: boot
Bug: 138459777
Change-Id: I4200b24baeaa6e408a5e0a2c890561bda1e2f1f4
Diffstat (limited to 'libutils/ProcessCallStack_fuzz.cpp')
0 files changed, 0 insertions, 0 deletions
