diff --git a/libprocessgroup/profiles/cgroups.json b/libprocessgroup/profiles/cgroups.json index 23d76ee15..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,11 +39,6 @@ { "Controller": "freezer", "Path": "." - }, - { - "Controller": "io", - "Path": ".", - "NeedsActivation": true } ] } diff --git a/libprocessgroup/profiles/task_profiles.json b/libprocessgroup/profiles/task_profiles.json index 8e784aeb5..e44d3bf72 100644 --- a/libprocessgroup/profiles/task_profiles.json +++ b/libprocessgroup/profiles/task_profiles.json @@ -460,7 +460,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "background" } }, { @@ -499,7 +500,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "" } }, { @@ -538,7 +540,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "" } }, { @@ -577,7 +580,8 @@ "Name": "JoinCgroup", "Params": { - "Controller": "io" + "Controller": "blkio", + "Path": "" } }, { diff --git a/rootdir/init.rc b/rootdir/init.rc index 408daff80..323d9cb3c 100644 --- a/rootdir/init.rc +++ b/rootdir/init.rc @@ -218,6 +218,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