I'm trying to run an build ASOP (with automotiv/car related packages included) on a ARM64 device. I've already managed to build and run Android 11 on the device without the car parts. Building and starting the device with the car parts included works fine, but it get stuck on booting (while showing the boot animation). Essentially the problem seem to be that iorapd fails (and then retries to connect) to the package manager. The tombstone left behind is filled with the following
ABI: 'arm64'
Timestamp: 1970-01-01 00:06:10+0000
pid: 252, tid: 252, name: iorapd >>> /system/bin/iorapd <<<
uid: 1071
signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
Abort message: 'Fail to create version map in 60000 milliseconds. Reason: Failed to connect to package manager service. Is system_server down?'
--------- log system
01-01 00:00:06.704 252 252 I iorapd : iorapd (the prefetchening) firing up
01-01 00:00:06.744 252 252 E iorapd : SQLite error (14): cannot open file at line 38589 of [b2325a6e1c]
01-01 00:00:06.744 252 252 E iorapd : SQLite error (14): os_unix.c:38589: (2) open(/data/misc/iorapd/sqlite.db) -
01-01 00:00:08.490 252 252 I iorapd : Reinitialized database at '/data/misc/iorapd/sqlite.db'
01-01 00:00:08.491 252 252 W iorapd : Reconnect to package manager service: 1 times
01-01 00:00:13.566 252 252 E iorapd : Cannot get package manager service!
01-01 00:00:14.567 252 252 W iorapd : Reconnect to package manager service: 2 times
01-01 00:00:19.598 252 252 E iorapd : Cannot get package manager service!
01-01 00:00:20.598 252 252 W iorapd : Reconnect to package manager service: 3 times
...
01-01 00:06:03.508 252 252 E iorapd : Cannot get package manager service!
01-01 00:06:04.508 252 252 W iorapd : Reconnect to package manager service: 60 times
01-01 00:06:09.540 252 252 E iorapd : Cannot get package manager service!
01-01 00:06:10.541 252 252 F iorapd : package_manager_remote.cc:118] Fail to create version map in 60000 milliseconds. Reason: Failed to connect to package manager service. Is system_server down?
--------- log main
01-01 00:02:25.885 252 252 I ServiceManager: Waiting for service 'package_native' on '/dev/binder'...
01-01 00:02:25.986 252 252 I ServiceManager: Waiting for service 'package_native' on '/dev/binder'...
01-01 00:02:26.187 252 252 I ServiceManager: Waiting for service 'package_native' on '/dev/binder'...
01-01 00:02:26.288 252 252 W ServiceManager: Service package_native didn't start. Returning NULL
The build (mk) file is to a large extent common between the non-car version (that works) and the car version (that doesn't) - both inherit product/core_64_bit_only.mk
and adds all device specific configuration.
The difference is that the non-car build inherits device/google/atv/products/atv_base.mk
while the car build inherits packages/services/Car/car_product/build/car.mk
.
Two things that would be greatly appreciated
- Any pointers to why this would happen and how to mitigate it
- Any instructions on how to make all the logs persisted (so I can analyse if anything else goes wrong during the boot), I've tried to add a custom init.log.rc to vendor/etc/init/hw with bellow, but it doesn't seem to make logcat actually persist the logs
on post-fs-data
exec -- touch /data/bootchart/enabled
setprop logd.logpersistd.enable true
setprop logd.logpersistd persist
setprop persist.logd.logpersistd "logcatd"