summaryrefslogtreecommitdiff
path: root/rootdir
diff options
context:
space:
mode:
authorArian <arian.kulmer@web.de>2021-04-06 19:29:03 +0200
committerArian <arian.kulmer@web.de>2021-04-07 11:50:33 +0200
commite99db13236bc8ac3471fcb22e81178fc423679eb (patch)
treed13113be29fdb04c693b323ae6d2e58ea8d28893 /rootdir
parent0950b9cb5eeddcc776a656c87cdf0d97d36e961e (diff)
shinano-common: rootdir: Introduce a service to start suntrold
* suntrold is a oneshot service and spawns a subprocess which is required for the rear camera. Since [1] oneshot services' process groups are killed which prevents suntrold from working correctly. * To work this issue around create a non-oneshot service, suntrold.sh, which never exits, so that suntrold can be started from it and it's subprocesses will not be killed. [1] https://github.com/aosp-mirror/platform_system_core/commit/d89ed132a0ee1a57046286b83e64a35b71774952 [Idea of this is from LuK1337] Co-authored-by: LuK1337 <priv.luk@gmail.com> Change-Id: Id9c4f56648168f0ffe19b2bb31c591750afe6f97
Diffstat (limited to 'rootdir')
-rw-r--r--rootdir/Android.mk8
-rw-r--r--rootdir/bin/suntrold.sh7
-rw-r--r--rootdir/etc/init.camera.rc5
-rw-r--r--rootdir/etc/init.qcom.rc7
4 files changed, 20 insertions, 7 deletions
diff --git a/rootdir/Android.mk b/rootdir/Android.mk
index 92b8981..216a8da 100644
--- a/rootdir/Android.mk
+++ b/rootdir/Android.mk
@@ -66,6 +66,14 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
+LOCAL_MODULE := suntrold.sh
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_SRC_FILES := bin/suntrold.sh
+LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
LOCAL_MODULE := tad_static
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := EXECUTABLES
diff --git a/rootdir/bin/suntrold.sh b/rootdir/bin/suntrold.sh
new file mode 100644
index 0000000..170b738
--- /dev/null
+++ b/rootdir/bin/suntrold.sh
@@ -0,0 +1,7 @@
+#!/vendor/bin/sh
+
+# Start suntrold
+/vendor/bin/suntrold
+
+# Sleep infinite to prevent that suntrold's subprocess gets killed
+tail -f /dev/null
diff --git a/rootdir/etc/init.camera.rc b/rootdir/etc/init.camera.rc
index ce77064..068c838 100644
--- a/rootdir/etc/init.camera.rc
+++ b/rootdir/etc/init.camera.rc
@@ -101,6 +101,11 @@ service credmgrd /vendor/bin/credmgrd
socket credmgr stream 0660 system camera
disabled
+service suntrold-sh /vendor/bin/suntrold.sh
+ class main
+ user system
+ group system camera
+
# Secure Config Transfer service
service sct_service /vendor/bin/sct_service
user root
diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc
index 7329ce0..010b98b 100644
--- a/rootdir/etc/init.qcom.rc
+++ b/rootdir/etc/init.qcom.rc
@@ -385,13 +385,6 @@ service ril-daemon1 /vendor/bin/hw/rild -c 2
on property:persist.radio.multisim.config=dsds
start ril-daemon1
-# Start suntrold
-service suntrold /vendor/bin/suntrold
- user system
- group system camera
- oneshot
- class main
-
# Modem Log QMI service
service mlog_qmi_service /vendor/bin/mlog_qmi_service
class core