diff --git a/libprocessgroup/profiles/cgroups.json b/libprocessgroup/profiles/cgroups.json index d013ec858..3e4393df2 100644 --- a/libprocessgroup/profiles/cgroups.json +++ b/libprocessgroup/profiles/cgroups.json @@ -1,5 +1,12 @@ { "Cgroups": [ + { + "Controller": "blkio", + "Path": "/dev/blkio", + "Mode": "0775", + "UID": "system", + "GID": "system" + }, { "Controller": "cpu", "Path": "/dev/cpuctl", @@ -32,12 +39,6 @@ { "Controller": "freezer", "Path": "." - }, - { - "Controller": "io", - "Path": ".", - "NeedsActivation": true, - "Optional": true } ] } diff --git a/libprocessgroup/profiles/task_profiles.json b/libprocessgroup/profiles/task_profiles.json index 6314667ef..1fc66ba10 100644 --- a/libprocessgroup/profiles/task_profiles.json +++ b/libprocessgroup/profiles/task_profiles.json @@ -442,7 +442,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "background" } } ] @@ -454,7 +455,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "" } } ] @@ -466,7 +468,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "" } } ] @@ -478,7 +481,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "" } } ] diff --git a/rootdir/init.rc b/rootdir/init.rc index fb6473666..317f80908 100644 --- a/rootdir/init.rc +++ b/rootdir/init.rc @@ -219,6 +219,26 @@ on init write /dev/stune/nnapi-hal/schedtune.boost 1 write /dev/stune/nnapi-hal/schedtune.prefer_idle 1 + # Create blkio group and apply initial settings. + # This feature needs kernel to support it, and the + # device's init.rc must actually set the correct values. + mkdir /dev/blkio/background + chown system system /dev/blkio + chown system system /dev/blkio/background + chown system system /dev/blkio/tasks + chown system system /dev/blkio/background/tasks + chown system system /dev/blkio/cgroup.procs + chown system system /dev/blkio/background/cgroup.procs + chmod 0664 /dev/blkio/tasks + chmod 0664 /dev/blkio/background/tasks + chmod 0664 /dev/blkio/cgroup.procs + chmod 0664 /dev/blkio/background/cgroup.procs + write /dev/blkio/blkio.weight 1000 + write /dev/blkio/background/blkio.weight 200 + write /dev/blkio/background/blkio.bfq.weight 10 + write /dev/blkio/blkio.group_idle 0 + write /dev/blkio/background/blkio.group_idle 0 + restorecon_recursive /mnt mount configfs none /config nodev noexec nosuid