What steps will reproduce the problem?
(1) A ChromeOS device was reported to have "OS missing" issue
(2) Press TAB and get recovery reason
What is the expected result?
A better reason like "DM Verity Error in kernel partition"
What happens instead?
Only 0x5b / no bootable kernel found on disk
For proto build devices, we usually find that eMMC error, driver error, or memory error may lead to DM verity driver disabling kernel partition (change GPT entries to boot priority=0) and set the first bytes of kernel signature as "DMERROR".
However, it's difficult to debug such systems and figure out the reason because (1) you can't boot the system unless it's already allowing Ctrl-U (2) The 'no bootable kernel' gives no hint to DM error unless the developer is aware of that.
I'd recommend adding a new recovery reason if any of the kernel was found to be filled with DMERROR.
Comment 1 by hungte@chromium.org
, Apr 30 2017And here's what I currently do to help partner checking no bootable kernel issues: 1. First boot the system with a test image from USB stick by Ctrl-U. 2. Enter VT2 and do "cgpt show /dev/mmcblk0 > /tmp/cgpt.log" and upload the /tmp/cgpt.log 3. dd if=/dev/mmcblk0p2 of=/tmp/kern2.bin bs=1M; bzip2 /tmp/kern2.bin dd if=/dev/mmcblk0p4 of=/tmp/kern4.bin bs=1M; bzip2 /tmp/kern4.bin # And please upload kern2.bin.bz2, kern4.bin.bz2 4. mount /dev/mmcblk0p1 /media And upload /media/encrypted.key and /media/encrypted.block (this huge so you have to compress and put it somewhere like google drive). Also tar or zip /media/var_overlay and upload.