diff --git a/adb/Android.mk b/adb/Android.mk index e2d0bb1b1..e271a63b0 100644 --- a/adb/Android.mk +++ b/adb/Android.mk @@ -277,6 +277,8 @@ endif LOCAL_MODULE := adbd +LOCAL_INIT_RC := adbd.rc + LOCAL_FORCE_STATIC_EXECUTABLE := true LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN) LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED) diff --git a/adb/adbd.rc b/adb/adbd.rc new file mode 100644 index 000000000..b91d8b5c5 --- /dev/null +++ b/adb/adbd.rc @@ -0,0 +1,14 @@ +on post-fs-data + mkdir /data/misc/adb 02750 system shell + mkdir /data/adb 0700 root root + +# adbd is controlled via property triggers in init..usb.rc +service adbd /sbin/adbd --root_seclabel=u:r:su:s0 + class core + socket adbd stream 660 system system + disabled + seclabel u:r:adbd:s0 + +# adbd on at boot in emulator +on property:ro.kernel.qemu=1 + start adbd diff --git a/debuggerd/Android.mk b/debuggerd/Android.mk index 3fca709e3..f7a5f8207 100644 --- a/debuggerd/Android.mk +++ b/debuggerd/Android.mk @@ -27,6 +27,9 @@ LOCAL_SRC_FILES_x86_64 := x86_64/machine.cpp LOCAL_CPPFLAGS := $(common_cppflags) +LOCAL_INIT_RC_32 := debuggerd.rc +LOCAL_INIT_RC_64 := debuggerd64.rc + ifeq ($(TARGET_IS_64_BIT),true) LOCAL_CPPFLAGS += -DTARGET_IS_64_BIT endif diff --git a/debuggerd/debuggerd.rc b/debuggerd/debuggerd.rc new file mode 100644 index 000000000..4338ae92b --- /dev/null +++ b/debuggerd/debuggerd.rc @@ -0,0 +1,2 @@ +service debuggerd /system/bin/debuggerd + class main diff --git a/debuggerd/debuggerd64.rc b/debuggerd/debuggerd64.rc new file mode 100644 index 000000000..341a3296d --- /dev/null +++ b/debuggerd/debuggerd64.rc @@ -0,0 +1,2 @@ +service debuggerd64 /system/bin/debuggerd64 + class main diff --git a/lmkd/Android.mk b/lmkd/Android.mk index 39081d61f..8c886613d 100644 --- a/lmkd/Android.mk +++ b/lmkd/Android.mk @@ -7,4 +7,6 @@ LOCAL_CFLAGS := -Werror LOCAL_MODULE := lmkd +LOCAL_INIT_RC := lmkd.rc + include $(BUILD_EXECUTABLE) diff --git a/lmkd/lmkd.rc b/lmkd/lmkd.rc new file mode 100644 index 000000000..83c5ff0f9 --- /dev/null +++ b/lmkd/lmkd.rc @@ -0,0 +1,4 @@ +service lmkd /system/bin/lmkd + class core + critical + socket lmkd seqpacket 0660 system system diff --git a/logcat/Android.mk b/logcat/Android.mk index 7115f9ba9..844ab8bff 100644 --- a/logcat/Android.mk +++ b/logcat/Android.mk @@ -11,6 +11,8 @@ LOCAL_MODULE := logcat LOCAL_CFLAGS := -Werror +LOCAL_INIT_RC := logcatd.rc + include $(BUILD_EXECUTABLE) include $(call first-makefiles-under,$(LOCAL_PATH)) diff --git a/logcat/logcatd.rc b/logcat/logcatd.rc new file mode 100644 index 000000000..0bc581e91 --- /dev/null +++ b/logcat/logcatd.rc @@ -0,0 +1,13 @@ +on property:persist.logd.logpersistd=logcatd + # all exec/services are called with umask(077), so no gain beyond 0700 + mkdir /data/misc/logd 0700 logd log + # logd for write to /data/misc/logd, log group for read from pstore (-L) + exec - logd log -- /system/bin/logcat -L -b all -v threadtime -v usec -v printable -D -f /data/misc/logd/logcat -r 64 -n 256 + start logcatd + +service logcatd /system/bin/logcat -b all -v threadtime -v usec -v printable -D -f /data/misc/logd/logcat -r 64 -n 256 + class late_start + disabled + # logd for write to /data/misc/logd, log group for read from log daemon + user logd + group log diff --git a/logd/Android.mk b/logd/Android.mk index 615d03048..4d08a2342 100644 --- a/logd/Android.mk +++ b/logd/Android.mk @@ -4,6 +4,8 @@ include $(CLEAR_VARS) LOCAL_MODULE:= logd +LOCAL_INIT_RC := logd.rc + LOCAL_SRC_FILES := \ main.cpp \ LogCommand.cpp \ diff --git a/logd/logd.rc b/logd/logd.rc new file mode 100644 index 000000000..498baecd5 --- /dev/null +++ b/logd/logd.rc @@ -0,0 +1,9 @@ +service logd /system/bin/logd + class core + socket logd stream 0666 logd logd + socket logdr seqpacket 0666 logd logd + socket logdw dgram 0222 logd logd + +service logd-reinit /system/bin/logd --reinit + oneshot + disabled