BACKPORT: psi: cgroup support
On a system that executes multiple cgrouped jobs and independent workloads, we don't just care about the health of the overall system, but also that of individual jobs, so that we can ensure individual job health, fairness between jobs, or prioritize some jobs over others. This patch implements pressure stall tracking for cgroups. In kernels with CONFIG_PSI=y, cgroup2 groups will have cpu.pressure, memory.pressure, and io.pressure files that track aggregate pressure stall times for only the tasks inside the cgroup. Link: http://lkml.kernel.org/r/20180828172258.3185-10-hannes@cmpxchg.org Signed-off-by:Johannes Weiner <hannes@cmpxchg.org> Acked-by:
Tejun Heo <tj@kernel.org> Acked-by:
Peter Zijlstra (Intel) <peterz@infradead.org> Tested-by:
Daniel Drake <drake@endlessm.com> Tested-by:
Suren Baghdasaryan <surenb@google.com> Cc: Christopher Lameter <cl@linux.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Johannes Weiner <jweiner@fb.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Enderborg <peter.enderborg@sony.com> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Shakeel Butt <shakeelb@google.com> Cc: Vinayak Menon <vinmenon@codeaurora.org> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit 2ce7135adc9ad081aa3c49744144376ac74fea60) Conflicts: Documentation/cgroup-v2.txt include/linux/cgroup.h kernel/cgroup/cgroup.c (1. manual merge from Documentation/admin-guide/cgroup-v2.rst 2. manually merged changes from kernel/cgroup/cgroup.c into kernel/cgroup.c 3. manual merge in css_free_work_fn to allow psi support only for cgroup v2 4. manual merge in cgroup_create to allow psi support only for cgroup v2) Bug: 111308141 Test: modified lmkd to use PSI and tested using lmkd_unit_test Signed-off-by:
Suren Baghdasaryan <surenb@google.com> Change-Id: I2ffb9d50ba87f8b7655bed215a625784e098879c
Loading
Please register or sign in to comment