blob: 5b668f2153e3ee27b1adabf5b1cf1a4178f837fc [file] [log] [blame]
# Extras
import /init.superuser.rc
on init
export TERMINFO /system/etc/terminfo
export TERM linux
# Set up the BFQIO hierarchy
chmod 0755 /sys/fs/cgroup
mkdir /sys/fs/cgroup/bfqio 0755 root system
mount cgroup none /sys/fs/cgroup/bfqio bfqio
write /sys/fs/cgroup/bfqio/bfqio.ioprio_class 2
write /sys/fs/cgroup/bfqio/bfqio.ioprio 4
chown root system /sys/fs/cgroup/bfqio/tasks
chmod 0666 /sys/fs/cgroup/bfqio/tasks
# Realtime audio class
mkdir /sys/fs/cgroup/bfqio/rt-audio 0755 root system
write /sys/fs/cgroup/bfqio/rt-audio/bfqio.ioprio_class 1
write /sys/fs/cgroup/bfqio/rt-audio/bfqio.ioprio 4
chown media system /sys/fs/cgroup/bfqio/rt-audio/tasks
chmod 0664 /sys/fs/cgroup/bfqio/rt-audio/tasks
# Realtime display class
mkdir /sys/fs/cgroup/bfqio/rt-display 0755 root system
write /sys/fs/cgroup/bfqio/rt-display/bfqio.ioprio_class 1
write /sys/fs/cgroup/bfqio/rt-display/bfqio.ioprio 7
chown system system /sys/fs/cgroup/bfqio/rt-display/tasks
chmod 0664 /sys/fs/cgroup/bfqio/rt-display/tasks
# Background class
mkdir /sys/fs/cgroup/bfqio/bg 0755 root system
write /sys/fs/cgroup/bfqio/bg/bfqio.ioprio_class 2
write /sys/fs/cgroup/bfqio/bg/bfqio.ioprio 7
chown root system /sys/fs/cgroup/bfqio/bg/tasks
chmod 0666 /sys/fs/cgroup/bfqio/bg/tasks
# Idle
mkdir /sys/fs/cgroup/bfqio/idle 0755 root system
write /sys/fs/cgroup/bfqio/idle/bfqio.ioprio_class 3
write /sys/fs/cgroup/bfqio/idle/bfqio.ioprio 0
chown root system /sys/fs/cgroup/bfqio/idle/tasks
chmod 0666 /sys/fs/cgroup/bfqio/idle/tasks
on post-fs-data
mkdir /data/.ssh 0750 root shell
on boot
start sysinit
chown system system /sys/block/mmcblk0/queue/scheduler
chmod 0664 /sys/block/mmcblk0/queue/scheduler
restorecon /sys/block/mmcblk0/queue/scheduler
chown system system /dev/cpuctl/apps/cpu.notify_on_migrate
chmod 0664 /dev/cpuctl/apps/cpu.notify_on_migrate
chown system system /dev/cpuctl/cpu.notify_on_migrate
chmod 0664 /dev/cpuctl/cpu.notify_on_migrate
# LiveDisplay sysfs
chown system system /sys/devices/virtual/graphics/fb0/aco
chmod 0660 /sys/devices/virtual/graphics/fb0/aco
chown system system /sys/devices/virtual/graphics/fb0/cabc
chmod 0660 /sys/devices/virtual/graphics/fb0/cabc
chown system system /sys/devices/virtual/graphics/fb0/rgb
chmod 0660 /sys/devices/virtual/graphics/fb0/rgb
chown system system /sys/devices/virtual/graphics/fb0/sre
chmod 0660 /sys/devices/virtual/graphics/fb0/sre
# Define TCP delayed ack settings for WiFi & LTE
chown system system /sys/kernel/ipv4/tcp_delack_seg
chown system system /sys/kernel/ipv4/tcp_use_userconfig
setprop net.tcp.delack.default 1
setprop net.tcp.delack.wifi 20
setprop net.tcp.delack.lte 8
setprop net.tcp.usercfg.default 0
setprop net.tcp.usercfg.wifi 1
setprop net.tcp.usercfg.lte 1
# Persistent properties (only created if persist exists)
mkdir /persist/properties 0770 system system
# sysinit (/system/etc/init.d)
service sysinit /system/bin/sysinit
user root
oneshot
disabled
# adb over network
on property:service.adb.tcp.port=5555
stop adbd
start adbd
on property:service.adb.tcp.port=-1
stop adbd
start adbd
# Configure IO scheduler
on property:sys.io.scheduler=*
write /sys/block/mmcblk0/queue/scheduler ${sys.io.scheduler}
on property:persist.sys.io.scheduler=*
setprop sys.io.scheduler ${persist.sys.io.scheduler}
# Set slice_idle to 0 for CFQ
on property:sys.io.scheduler=cfq
write /sys/block/mmcblk0/queue/iosched/slice_idle 0
# Set slice_idle to 0 for BFQ
on property:sys.io.scheduler=bfq
write /sys/block/mmcblk0/queue/iosched/slice_idle 0