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: > - https://builds.tuxbuild.com/2EfrNYbejRQczhhqndawRkHARHZ/ > > > 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@xxxxxxxxxx> > Reviewed-and-tested-by: Imran Khan <imran.f.khan@xxxxxxxxxx> > Reported-and-tested-by: Xuewen Yan <xuewen.yan@xxxxxxxxxx> > Fixes: 05c7b7a92cc8 ("cgroup/cpuset: Fix a race between > cpuset_attach() and cpu hotplug") > Cc: stable@xxxxxxxxxxxxxxx # v5.17+ > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> Thanks, I've added an #include that should resolve this now. greg k-h