diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc index 07f85c9..bc4d549 100644 --- a/rootdir/etc/init.qcom.rc +++ b/rootdir/etc/init.qcom.rc @@ -233,6 +233,22 @@ on boot chown system graphics /sys/class/graphics/fb0/msm_cmd_autorefresh_en chmod 0664 /sys/class/graphics/fb0/msm_cmd_autorefresh_en + write /dev/cpuset/top-app/cpus 0-7 + write /dev/cpuset/top-app/boost/cpus 4-7 + write /dev/cpuset/foreground/cpus 0-6 + write /dev/cpuset/foreground/boost/cpus 0-6 + write /dev/cpuset/background/cpus 0-1 + write /dev/cpuset/system-background/cpus 0-3 + + # add a cpuset for the camera daemon + # we want all cores for camera + mkdir /dev/cpuset/camera-daemon + write /dev/cpuset/camera-daemon/cpus 0-3 + write /dev/cpuset/camera-daemon/mems 0 + chown system system /dev/cpuset/camera-daemon + chown system system /dev/cpuset/camera-daemon/tasks + chmod 0664 /dev/cpuset/camera-daemon/tasks + # msm specific files that need to be created on /data on post-fs-data mkdir /tombstones/modem 0771 system system @@ -413,6 +429,7 @@ service qseecomd /system/bin/qseecomd class core user root group root + writepid /dev/cpuset/system-background/tasks service thermal-engine /system/vendor/bin/thermal-engine class main @@ -421,11 +438,13 @@ service thermal-engine /system/vendor/bin/thermal-engine socket thermal-recv-client stream 0660 system system socket thermal-recv-passive-client stream 0666 system system group root + writepid /dev/cpuset/system-background/tasks service time_daemon /system/bin/time_daemon class late_start user root group root + writepid /dev/cpuset/system-background/tasks service audiod /system/bin/audiod class late_start @@ -443,6 +462,7 @@ service qcamerasvr /system/bin/mm-qcamera-daemon class late_start user camera group camera system inet input graphics + writepid /dev/cpuset/system-background/tasks service cnd /system/bin/cnd class main @@ -452,6 +472,7 @@ service qseeproxydaemon /system/vendor/bin/qseeproxydaemon class late_start user system group system + writepid /dev/cpuset/system-background/tasks service esepmdaemon /system/vendor/bin/esepmdaemon class core @@ -496,6 +517,7 @@ service imscmservice /system/bin/imscmservice user system group radio diag diag log disabled + writepid /dev/cpuset/system-background/tasks on property:sys.ims.DATA_DAEMON_STATUS=1 start imscmservice @@ -506,6 +528,7 @@ service imsdatadaemon /system/bin/imsdatadaemon socket ims_datad stream 0660 system radio group system wifi radio inet log diag disabled + writepid /dev/cpuset/system-background/tasks on property:sys.ims.QMI_DAEMON_STATUS=1 start imsdatadaemon @@ -515,10 +538,12 @@ service imsqmidaemon /system/bin/imsqmidaemon user system socket ims_qmid stream 0660 system radio group radio log diag + writepid /dev/cpuset/system-background/tasks service rmt_storage /system/bin/rmt_storage class core user root + writepid /dev/cpuset/system-background/tasks on property:wc_transport.start_fmhci=true start fmhal_service @@ -542,17 +567,20 @@ service fmhal_service /system/bin/fmhal_service service tftp_server /system/bin/tftp_server class core user root + writepid /dev/cpuset/system-background/tasks service per_mgr /system/bin/pm-service class core user system group system net_raw + writepid /dev/cpuset/system-background/tasks service per_proxy /system/bin/pm-proxy class core user system group system disabled + writepid /dev/cpuset/system-background/tasks on property:init.svc.per_mgr=running start per_proxy @@ -611,6 +639,8 @@ service port-bridge /system/bin/port-bridge service netmgrd /system/bin/netmgrd class main + group radio system wakelock + writepid /dev/cpuset/system-background/tasks service ipacm-diag /system/bin/ipacm-diag class main @@ -622,11 +652,13 @@ service ipacm /system/bin/ipacm class main user net_admin group net_admin inet + writepid /dev/cpuset/system-background/tasks service qti /system/vendor/bin/qti class main user radio group radio net_raw qcom_diag usb net_admin + writepid /dev/cpuset/system-background/tasks on property:ro.use_data_netmgrd=false # netmgr not supported on specific target @@ -776,6 +808,7 @@ service loc_launcher /system/bin/loc_launcher #loc_launcher will start as root and set its uid to gps class late_start group gps inet qcom_diag wifi + writepid /dev/cpuset/system-background/tasks service fm_dl /system/bin/sh /system/etc/init.qcom.fm.sh class late_start