Board crashing after boot



I have a HiKey 960 rev. B running Android which shuts down immediately after boot. I wonder if you could help fix this.

I’ve been using this board for about half a year now to run Caffe. When running benchmarks continously, the board would crash a few times a day (turned off until the power is switched off and on). A few days ago, after having it run experiments over night, I discovered in the morning that the board is off. Upon reconnecting power the board turned on, the lights started flashing, the board was discovered by adb devices, then shut down after about 30 seconds.

I thought the OS got corrupted, so I reflashed the device and installed first build 529 hikey960-linaro-2018.06.03-factory-b642a7c5, then build 431 hikey960-linaro-2018.03.05-factory-1fa62caa because the newer one had OpenCL 2.0, and I needed OpenCL 1.2.

My dmesg output is here: . The log indicates that there seem to be security-related problems (see avc: denied { create } messages), but I am not sure what to do with that.

If that’s of any use, I have a second board which also recently started shutting down after boot, but I haven’t reinstalled it.

Thanks in advance!


hwservicemanager service is killed by init, since this service is considered ‘critical’, a reboot is triggered. It seems indeed related to the sepolocy error (avc). I would suggest to test with build 530, I will try on my side as well.

As a test/workaround, you can also try to set sepolicy as permissive via the kernel command line: androidboot.selinux=permissive. This can be achieved via abootimg or mkbootimg tool.


abootimg -u boot.img -c "cmdline = androidboot.hardware=hikey960 console=ttyFIQ0 androidboot.console=ttyFIQ0 firmware_class.path=/system/etc/firmware loglevel=15 buildvariant=userdebug video=HDMI-A-1:1920x1080@60 androidboot.selinux=permissive"


Thanks for this, Loic.

I’ve tried setting the policy as permissive as you advised. After reinstalling OS with patched boot.img, the board started fine, here is the dmesg:

The problem is that after I’ve reinstalled it the last time, it worked fine for about a day as well. Then it crashed when I was running clBLAS tuner and the problems with avc started. So I can’t be sure if enabling permissive made the difference, I guess I’ll just have to wait and see.

If the problem occurs again, I will try with the newer build as you suggested, it’s just that we can’t use OpenCL 2.0 which is shipped with the new builds.


Yes I assume your ‘original’ issue is not related about this new sepolicy issue… so when the board crash again please retrieve logs in the same way.


Unfortunately, the board keeps misbehaving in the same way. I reinstall permissive OS, run experiments for a few hours, then the board either crashes and does not start anymore, or I manually switch it off to cool down and cannot get it back up. The new dmesg log is here:

Any directions would be much appreciated.