| # Copyright 2018 The Chromium OS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| # |
| |
| on early-boot |
| # Mount SchedTune controller and create tuning groups. |
| mkdir /dev/stune |
| mount cgroup none /dev/stune schedtune |
| mkdir /dev/stune/foreground |
| chown system system /dev/stune |
| chown system system /dev/stune/foreground |
| chown system system /dev/stune/tasks |
| chown system system /dev/stune/foreground/tasks |
| chmod 0664 /dev/stune/tasks |
| chmod 0664 /dev/stune/foreground/tasks |
| |
| # Foreground tasks get schedule boost |
| write /dev/stune/foreground/schedtune.boost 20 |
| write /dev/stune/foreground/schedtune.prefer_idle 1 |
| |
| on property:sys.boot_completed=1 |
| # Adjust cpusets in container to better split work between |
| # little and big cores. |
| write /dev/cpuset/foreground/cpus 0-7 |
| write /dev/cpuset/background/cpus 0 |
| write /dev/cpuset/system-background/cpus 0-3 |
| write /dev/cpuset/restricted/cpus 0 |
| write /dev/cpuset/top-app/cpus 0-7 |