Binder Transaction failed debian image


#1

I have tried to update my hikey960 board with Debian image, but I get the following error message in the serial console.

[ 99.416996] init: kill(1998, 9) failed: No such process
[ 99.726984] binder: 1944:1944 transaction failed 29189, size 0-0
[ 100.733365] binder: 1944:1944 transaction failed 29189, size 0-0
[ 101.739808] binder: 1944:1944 transaction failed 29189, size 0-0
[ 102.746173] binder: 1944:1944 transaction failed 29189, size 0-0
[ 103.752532] binder: 1944:1944 transaction failed 29189, size 0-0
[ 104.377819] init: starting service ‘console’…
[ 104.383035] init: property_set(“ro.boottime.console”, “104331299463”) failed: property already set
[ 104.392513] init: setpgid failed for console: Operation not permitted
[ 104.399808] init: cannot execve(’/system/bin/sh’): No such file or directory
[ 104.407982] init: Service ‘console’ (pid 1999) exited with status 127
[ 104.414446] init: Sending signal 9 to service ‘console’ (pid 1999) process group…
[ 104.422226] init: kill(1999, 9) failed: No such process
[ 104.758997] binder: 1944:1944 transaction failed 29189, size 0-0
[ 105.765363] binder: 1944:1944 transaction failed 29189, size 0-0
[ 106.771746] binder: 1944:1944 transaction failed 29189, size 0-0
[ 107.778232] binder: 1944:1944 transaction failed 29189, size 0-0
[ 108.784594] binder: 1944:1944 transaction failed 29189, size 0-0
[ 109.382892] init: starting service ‘console’…
[ 109.388065] init: property_set(“ro.boottime.console”, “109336381754”) failed: property already set
and so on.

I have used the following image https://snapshots.linaro.org/reference-platform/embedded/master/hikey960/latest/rpb-wayland/rpb-console-image-hikey960-20180504111435-608.rootfs.img.gz
and have followed the following steps.

We do not provide Debian snapshots for Hikey960, however it is possible to get a generic arm64 Debian rootfs and make it works on Hikey960, however this requests some customization:

Download Hikey960 RPB rootfs (you should already have it)

wget http://snapshots.linaro.org/reference-platform/embedded/master/hikey960/latest/rpb/rpb-console-image-test-hikey960-20180430081127-604.rootfs.img.gz1
gunzip rpb-console-image-test-hikey960-20180430081127-604.rootfs.img.gz

Download a generic arm64 debian rootfs (https://releases.linaro.org/debian/images/)

wget https://releases.linaro.org/debian/images/alip-arm64/latest/linaro-jessie-alip-20161214-98.tar.gz

Create and mount your own rootfs image

dd if=/dev/zero of=raw-debian.img bs=1 count=0 seek=2G
mkfs.ext4 -b 4096 -F raw-debian.img
mkdir tmp-debian
sudo mount -o loop raw-debian.img tmp-debian

Copy generic debian rootfs files to your rootfs

tar -xzf linaro-jessie-alip-20161214-98.tar.gz
sudo cp -a ./binary/* ./tmp-debian/

Copy kernel, dtb modules and firmware from the Hikey960 RPB image to your rootfs

simg2img rpb-console-image-hikey960-20180430081127-604.rootfs.img raw-rpb.img
mkdir tmp-rpb
sudo mount raw-rpb.img tmp-rpb
cp -a tmp-rpb/boot tmp-debian
cp -a tmp-rpb/lib/firmware tmp-debian/lib
cp -a tmp-rpb/lib/modules tmp-debian/lib

Unmount your rootfs an regenerate sparse image

sudo umount tmp-debian
img2simg raw-debian.img debian.img

Flash the new debian rootfs

fastboot flash system debian.img

You should now be able to boot on Debian and use apt…

Any help regarding the error message.


#2

I think those instructions assume that you are starting from RPB, and given the log you attached, you are clearly starting from ANDROID, and even after writing a debian image to the system partition, your BOOT partition still contains an Android boot image, which obviously won’t work with debian.


#3

What can be done then ?


#4

Because the instructions from step 1 to step 6 are done in my PC and not on the board. So as long as the board is booted with debian, it should start booting from debian image right