summaryrefslogtreecommitdiff
path: root/libutils/ProcessCallStack_fuzz.cpp
diff options
context:
space:
mode:
authorMark Salyzyn <salyzyn@google.com>2019-07-29 09:35:18 -0700
committerMark Salyzyn <salyzyn@google.com>2019-07-29 11:56:51 -0700
commitbeb6abedcc23b848323ff2b54d05054ae5126a61 (patch)
treea2c6512c0f4791cc8c2ef8bff877f878d605935f /libutils/ProcessCallStack_fuzz.cpp
parent244d9b8fb968b9f0289ac69d723a4f760d1c1b91 (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