diff options
| author | Wei Wang <wvw@google.com> | 2018-04-04 13:45:33 -0700 |
|---|---|---|
| committer | Bruno Martins <bgcngm@gmail.com> | 2020-10-25 21:44:15 +0000 |
| commit | 4cdbee076e7a961aec60ac862d86e66e15ab220c (patch) | |
| tree | 06499930e909381b06811ecf0c9c71a6564debbe /rootdir | |
| parent | 79f0593950fb69a1e40309a03eba40b8546c0997 (diff) | |
pro1: Wait for hwservicemanager ready before running fsck
As property service is part of init, and if init is busy with built-in
command e.g. fsck, the propety_set() won't go through until the built-in
command is finished.
Move the start of hwservicemanager earlier and wait for its done after
launches bootanim and its dependencies (there is not wait time during
boot but the command is as a safeguard).
Bug: 74437368
Test: boot with simulated long fsck and bootanim shown early
Test: boot see 'start_waiting_for_property("hwservicemanager.ready", "true"): already set'
Change-Id: Iab4b857a51e0e6b8b059d063c1f0d65a0e987622
Diffstat (limited to 'rootdir')
| -rw-r--r-- | rootdir/etc/init.qcom.rc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc index 9932ce0..210ef52 100644 --- a/rootdir/etc/init.qcom.rc +++ b/rootdir/etc/init.qcom.rc @@ -138,6 +138,9 @@ on init write /sys/bus/msm_subsys/devices/subsys6/restart_level RELATED on fs + # Start HW service manager early + start hwservicemanager + wait /dev/block/platform/soc/1da4000.ufshc symlink /dev/block/platform/soc/1da4000.ufshc /dev/block/bootdevice @@ -171,9 +174,6 @@ on fs chmod 0664 /mnt/vendor/persist/sensors/sensors_settings - # Start HW service manager early - start hwservicemanager - # qseecomd needs /dev/block/bootdevice # vold needs keymaster that needs qseecomd start vendor.qseecomd @@ -193,6 +193,11 @@ on late-fs start vendor.configstore-hal start vendor.gralloc-2-0 + # Wait for hwservicemanager ready since fsck might be triggered in mount_all --late + # In such case, init won't responce the property_set from hwservicemanager and then + # cause services for bootanim not running. + wait_for_prop hwservicemanager.ready true + # Mount RW partitions which need run fsck mount_all /vendor/etc/fstab.qcom --late |
