Files
AXP-Resurection/docs/007-debug-boot-panic-screen.md
sunfish-adminandCursor 2d145c2878 009: Polish bacon fixes, OTA host scripts, and migration docs.
Restore disable_configstore, EuiccDisabler and thermal CDEV guards, branding
and rebuild/sync helpers; document device roles, laptop migration, and Gitea.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 21:06:45 +02:00

2.7 KiB
Raw Permalink Blame History

Status: parallel KernelSU / SusFS track (kept). Bridge to current Magisk ROM: 007-parallel-on-009.md. Magisk ship resume: 009-handoff-20261008.md.

Debug boot — freeze on panic (photo / dump)

Normal sunfish kernel: CONFIG_PANIC_TIMEOUT=5 + often CONFIG_QCOM_FORCE_WDOG_BITE_ON_PANIC → reboot in seconds. Console is UART only (console=ttyMSM0); # CONFIG_VT is not set → no Oops text on the phone display (you only see the Google logo loop).

What a “debug boot” must include (owner)

For a useful photo, both are required — freeze alone is not enough:

  1. Freeze: CONFIG_PANIC_TIMEOUT=0 + cmdline panic=0; disable CONFIG_QCOM_FORCE_WDOG_BITE_ON_PANIC so it does not reboot in 5s.
  2. On-screen console: CONFIG_VT + CONFIG_FRAMEBUFFER_CONSOLE (+ console=tty0 in cmdline). Without this, you only see the Google logo.
Goal Mechanism Photo-able?
Stop reboot loop panic=0 / PANIC_TIMEOUT=0, no wdog-bite-on-panic Logo freezes only
Oops on screen VT + FRAMEBUFFER_CONSOLE + console=tty0 Yes if panic after FB; early may still be logo
Dump after hang Freeze + penúltimo + immediate klog/logfs dd Not a photo

Use only on LAB, SusFS/debug trials. Never ship as daily boot. Next SusFS debug build after the sigfix trial must enable both.

Host recipe (LAB SusFS debug boot)

  1. Defconfig fragment (or temporary edits) on rom-dev01:
CONFIG_PANIC_TIMEOUT=0
# CONFIG_QCOM_FORCE_WDOG_BITE_ON_PANIC is not set
# optional on-screen console (experimental on Pixel 4.14):
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
  1. Cmdline (device tree or unpack/repack boot): add panic=0 and optionally console=tty0. Prefer a vendor_sunfish / BoardConfig override gated by a make var (e.g. SUNFISH_KERNEL_PANIC_DEBUG=1) so normal bacon stays clean.

  2. Build bootimage, name artifact boot-resukisu-susfs-DEBUG-YYYYMMDDTHHMMSSZ.img.

  3. Flash only to boot_b; keep penúltimo on boot_a. On hang: photo if text appears; Vol−+Power → --set-active=a.

Capture order (always)

  1. Panic / hang on SusFS (debug) slot
  2. Fastboot before Android success on good slot
  3. Then penúltimo + immediate dd of klog/logfs (4a has no fastboot fetch)

Status

Documented 2026-09-16 after SusFS early kernel_panic with empty Oops in klog. Sigfix rebuild may already address root cause; keep this recipe for the next opaque bootloop.