From 28dbc8b311f341e702c39b6a5ee0cc048a0280fb Mon Sep 17 00:00:00 2001 From: Steve Kondik Date: Mon, 7 Sep 2015 23:23:10 -0700 Subject: [PATCH] cm: Create cgroups for BFQIO * This creates the interface for a new ioprio management system which dramatically boosts performance and interactivity across the entire system. Change-Id: I3c402dd2cf6ed0a356a828257c2f373800f6a6cf --- prebuilt/common/etc/init.local.rc | 58 +++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/prebuilt/common/etc/init.local.rc b/prebuilt/common/etc/init.local.rc index 483864a6..7abf3d7f 100644 --- a/prebuilt/common/etc/init.local.rc +++ b/prebuilt/common/etc/init.local.rc @@ -5,6 +5,64 @@ on init export ANDROID_CACHE /cache export TERMINFO /system/etc/terminfo + # 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,xattr + write /sys/fs/cgroup/bfqio/bfqio.ioprio_class 2 + write /sys/fs/cgroup/bfqio/bfqio.ioprio 4 + write /sys/fs/cgroup/bfqio/bfqio.weight 1000 + 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 + write /sys/fs/cgroup/bfqio/rt-audio/bfqio.weight 1000 + 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 + write /sys/fs/cgroup/bfqio/rt-display/bfqio.weight 1000 + chown system graphics /sys/fs/cgroup/bfqio/rt-display/tasks + chmod 0664 /sys/fs/cgroup/bfqio/rt-display/tasks + + # Display class + mkdir /sys/fs/cgroup/bfqio/display 0755 root system + write /sys/fs/cgroup/bfqio/display/bfqio.ioprio_class 2 + write /sys/fs/cgroup/bfqio/display/bfqio.ioprio 0 + write /sys/fs/cgroup/bfqio/display/bfqio.weight 1000 + chown root system /sys/fs/cgroup/bfqio/display/tasks + chmod 0666 /sys/fs/cgroup/bfqio/display/tasks + + # Hipri class + mkdir /sys/fs/cgroup/bfqio/hipri 0755 root system + write /sys/fs/cgroup/bfqio/hipri/bfqio.ioprio_class 2 + write /sys/fs/cgroup/bfqio/hipri/bfqio.ioprio 2 + write /sys/fs/cgroup/bfqio/hipri/bfqio.weight 1000 + chown root system /sys/fs/cgroup/bfqio/hipri/tasks + chmod 0666 /sys/fs/cgroup/bfqio/hipri/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 + write /sys/fs/cgroup/bfqio/bg/bfqio.weight 1000 + 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 + write /sys/fs/cgroup/bfqio/idle/bfqio.weight 1000 + 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 mkdir /cache/recovery 0770 system cache