[Halium 9 Kernel Patching][GSI] Ubports fails to boot
About 4 days ago I began to patch my phone's kernel to boot Ubports GSIs made by xda user Erfan.
Now I'm stuck with a device that doesn't boot into Ubports, I've contacted Erfan in the Halium support group over Telegram but even he, didn't manage to help find the source of the reboots.
What happens: After I flash the patched kernel, halium-ramdisk, and apparmor-enabler zip files and reboot, the phone hangs at the "Android One" logo (or boot logo) then it vibrates once and it reboots itself. I've captured the last_kmsg and first, we thought there was a problem where the kernel panics on not finding the vibrator firmware which we got rid of using a flashable zip sent by him but even with it the OS didn't successfully boot.
Maybe someone from this forum has an idea of why does this happen and what the fix could be?
Device: Motorola One Vision
CPU: Exynos 9610
Kernel Source Code: https://github.com/nitanmarcel/android_kernel_motorola_exynos9610/tree/halium-9.0
@nitanmarcel Completely off the wall but the battery is ok? Just to rule that one out first.
@Lakotaubp By 'ok' you mean if it's fully charged? I have to admit that it had only 20% battery but I don't think is a big deal. And if you mean that if the battery has any problems then no, the battery is ok, the battery is not swollen, the phone doesn't heat, etc.
@nitanmarcel Might be best to fully charge it just in case of % reporting errors. Only asked as both a OPO and Nexus5 of mine refused to boot when the battery was an issue.
@nitanmarcel Also why did you delete your first question on this subject and start a new thread? It only gets confusing to follow progress. I have locked the other thread by the way to stop that from happening.
@Lakotaubp I've charged my phone and I tried to boot again but with no success. Also I've noticed the last_kmgs above is buggy so I tried generating a new one by letting my phone reboot a couple of times. Is still broken but maybe there are some new clue about what happens that I've missed: https://del.dog/urrycughug
Flohack last edited by Flohack
@nitanmarcel Hmm there are more than one boot attempts inside, its hard to see where you booted into recovery, and where you tried to boot Halium. However I found one here: https://del.dog/urrycughug#L9097 thats 6 seconds into kernel boot.
Then there is not much more messages that would show problems until 67 seconds where a normal reboot is triggered. So its not a kernel panic, it basically should at least run for this 1 minute - do you see RNDIS messages appear on the HOST computer, can you ssh to 10.15.19.82 during that time?
EDIT: yes you should have ssh access already, since the RNDIS adapter gets initialized:
<4>[ 6.617172,4] using random self ethernet address
<4>[ 6.617185,4] using random host ethernet address
if ssh does not work, try telnet
@Flohack SSH didn't worked and I haven't tried telnet, but yesterday I managed to get rid of the bug by setting the CONFIG_CMDLINE to tty0. Even tho the first bug got fixed there's another one.
Looks like something (we think lxc) causes kernel errors. I took some logs but they seem more broken than ever.
My last commit that enables tty0 console: https://github.com/nitanmarcel/android_kernel_motorola_exynos9610/commit/34f7cb72fcb2fce87dc327d4b4c7b2a3b900a62d
@nitanmarcel Yes you need a working console cmdline argument with UT, thats essential for upstart. Let me look on the other trace.
@nitanmarcel Yes lxc-start is crashing, probably even without doing anything already. Which kernel version is this, and plz post lxc-checkconfig output
@Flohack The Kernel's version is 4.14.56. I'm not at a PC right now and I've came back to stock ROM but I'll come back later with the required file.
Could you tell me where I could find that specific file?
Also here's a backup of the log folder from /data/system-data/var maybe it helps until I come back with the file you requested
Okay so do the following:
- Boot to recovery
- mkdir /a
- mount /data/rootfs.img /a
- cd /a/etc/init
- vi /etc/init/lxc-android-config.override
- place only one word inside this file: manual
- cd /
- umount /a
Now, if you reboot, lxc startup will be disabled, you should be able to log in with ssh. Then you can execute lxc-checkconfig in the shell.
I managed to login but it asked me for a password. I used
phabletand it looks like is accepted. But it get's stuck after that, and I can't do anything. After a few seconds the phone reboots. The file you mentioned wasn't empty, I removed everything and only placed
It might be the hwservicemanager. I'm applying a patch rn
@Flohack Same story. I can ssh but as soon as I enter the pasword
phabletthe console tab freezes and the phone reboots after a few seconds. This time without any last_kmsg.
I managed to get an last_kmsg after a few attemps: https://paste.ubuntu.com/p/gdThm8JyfF/
If I'm not wrong I think this is what crashes it.
35>[ 36.966464,5] systemd-logind: Failed to start user service, ignoring: Unknown unit: email@example.com <4>[ 36.967859,4] !entity_is_task(se)
@nitanmarcel No that one you can ignore, its normal ^^