Re: [PATCH] cgroup: fix psi_show() crash on 32bit ino archs

From: Johannes Weiner
Date: Mon Feb 24 2020 - 11:29:10 EST


On Sun, Feb 23, 2020 at 10:00:07PM -0500, Qian Cai wrote:
> Similar to the commit d7495343228f ("cgroup: fix incorrect
> WARN_ON_ONCE() in cgroup_setup_root()"), cgroup_id(root_cgrp) does not
> equal to 1 on 32bit ino archs which triggers all sorts of issues with
> psi_show() on s390x. For example,
>
> BUG: KASAN: slab-out-of-bounds in collect_percpu_times+0x2d0/
> Read of size 4 at addr 000000001e0ce000 by task read_all/3667
> collect_percpu_times+0x2d0/0x798
> psi_show+0x7c/0x2a8
> seq_read+0x2ac/0x830
> vfs_read+0x92/0x150
> ksys_read+0xe2/0x188
> system_call+0xd8/0x2b4
>
> Fix it by using cgroup_ino().
>
> Fixes: 743210386c03 ("cgroup: use cgrp->kn->id as the cgroup ID")
> Signed-off-by: Qian Cai <cai@xxxxxx>

Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>