cgroup: adjust criteria for rstat subsystem cpu lock access
authorJP Kobryn <inwardvessel@gmail.com>
Wed, 28 May 2025 23:51:30 +0000 (16:51 -0700)
committerTejun Heo <tj@kernel.org>
Sat, 31 May 2025 00:36:13 +0000 (14:36 -1000)
commitc853d18706de8c9525126b362f747d2e480e93df
tree3a69a446f7ae060f3543be2cf4d1febb023de917
parent0f70f5b08a47a3bc1a252e5f451a137cde7c98ce
cgroup: adjust criteria for rstat subsystem cpu lock access

Previously it was found that on uniprocessor machines the size of
raw_spinlock_t could be zero so a pre-processor conditional was used to
avoid the allocation of ss->rstat_ss_cpu_lock. The conditional did not take
into account cases where lock debugging features were enabled. Cover these
cases along with the original non-smp case by explicitly using the size of
size of the lock type as criteria for allocation/access where applicable.

Signed-off-by: JP Kobryn <inwardvessel@gmail.com>
Fixes: 748922dcfabd "cgroup: use subsystem-specific rstat locks to avoid contention"
Reported-by: kernel test robot <oliver.sang@intel.com>
Closes: https://lore.kernel.org/oe-lkp/202505281034.7ae1668d-lkp@intel.com
Reviewed-by: Shakeel Butt <shakeel.butt@linux.dev>
Reviewed-by: Waiman Long <longman@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
kernel/cgroup/rstat.c