On Tue, Sep 13, 2022 at 04:48:44PM +0530, Naresh Kamboju wrote:
On stable-rc 5.4 arm and arm64 builds failed due to following errors / warnings.
kernel/cgroup/cgroup.c:2404:2: error: implicit declaration of function 'cpus_read_lock' [-Werror,-Wimplicit-function-declaration] cpus_read_lock(); ^ kernel/cgroup/cgroup.c:2404:2: note: did you mean 'cpuset_read_lock'? include/linux/cpuset.h:58:13: note: 'cpuset_read_lock' declared here extern void cpuset_read_lock(void); ^ kernel/cgroup/cgroup.c:2417:2: error: implicit declaration of function 'cpus_read_unlock' [-Werror,-Wimplicit-function-declaration] cpus_read_unlock(); ^ kernel/cgroup/cgroup.c:2417:2: note: did you mean 'cpuset_read_unlock'? include/linux/cpuset.h:59:13: note: 'cpuset_read_unlock' declared here extern void cpuset_read_unlock(void); ^ 2 errors generated.
drivers/gpu/drm/drm_lock.c:363:6: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation] */ mutex_lock(&dev->struct_mutex); ^ drivers/gpu/drm/drm_lock.c:357:2: note: previous statement is here if (!drm_core_check_feature(dev, DRIVER_LEGACY)) ^ 1 warning generated.
Build link:
Steps to reproduce:
# To install tuxmake on your system globally: # sudo pip3 install -U tuxmake #
tuxmake --runtime podman --target-arch arm64 --toolchain clang-nightly --kconfig defconfig LLVM=1 LLVM_IAS=1
Following patch might be the reason for these build errors:
cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock [ Upstream commit 4f7e7236435ca0abe005c674ebd6892c6e83aeb3 ]
Bringing up a CPU may involve creating and destroying tasks which requires read-locking threadgroup_rwsem, so threadgroup_rwsem nests inside cpus_read_lock(). However, cpuset's ->attach(), which may be called with thredagroup_rwsem write-locked, also wants to disable CPU hotplug and acquires cpus_read_lock(), leading to a deadlock.
Fix it by guaranteeing that ->attach() is always called with CPU hotplug disabled and removing cpus_read_lock() call from cpuset_attach().
Signed-off-by: Tejun Heo tj@kernel.org Reviewed-and-tested-by: Imran Khan imran.f.khan@oracle.com Reported-and-tested-by: Xuewen Yan xuewen.yan@unisoc.com Fixes: 05c7b7a92cc8 ("cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug") Cc: stable@vger.kernel.org # v5.17+ Signed-off-by: Sasha Levin sashal@kernel.org
Thanks, I've added an #include that should resolve this now.
greg k-h