• Kees Cook's avatar
    cgroup: Avoid compiler warnings with no subsystems · d20d30eb
    Kees Cook authored
    As done before in commit cb4a3167 ("cgroup: use bitmask to filter
    for_each_subsys"), avoid compiler warnings for the pathological case of
    having no subsystems (i.e. CGROUP_SUBSYS_COUNT == 0). This condition is
    hit for the arm multi_v7_defconfig config under -Wzero-length-bounds:
    
    In file included from ./arch/arm/include/generated/asm/rwonce.h:1,
                     from include/linux/compiler.h:264,
                     from include/uapi/linux/swab.h:6,
                     from include/linux/swab.h:5,
                     from arch/arm/include/asm/opcodes.h:86,
                     from arch/arm/include/asm/bug.h:7,
                     from include/linux/bug.h:5,
                     from include/linux/thread_info.h:13,
                     from include/asm-generic/current.h:5,
                     from ./arch/arm/include/generated/asm/current.h:1,
                     from include/linux/sched.h:12,
                     from include/linux/cgroup.h:12,
                     from kernel/cgroup/cgroup-internal.h:5,
                     from kernel/cgroup/cgroup.c:31:
    kernel/cgroup/cgroup.c: In function 'of_css':
    kernel/cgroup/cgroup.c:651:42: warning: array subscript '<unknown>' is outside the bounds of an
    interior zero-length array 'struct cgroup_subsys_state *[0]' [-Wzero-length-bounds]
      651 |   return rcu_dereference_raw(cgrp->subsys[cft->ss->id]);
    Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
    Cc: Tejun Heo <tj@kernel.org>
    Cc: Zefan Li <lizefan.x@bytedance.com>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Cc: cgroups@vger.kernel.org
    Signed-off-by: default avatarKees Cook <keescook@chromium.org>
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    d20d30eb
cgroup.c 175 KB