linux/tools/testing/selftests/cgroup
Waiman Long 6df415aa46 cgroup/cpuset: Defer housekeeping_update() calls from CPU hotplug to workqueue
The cpuset_handle_hotplug() may need to invoke housekeeping_update(),
for instance, when an isolated partition is invalidated because its
last active CPU has been put offline.

As we are going to enable dynamic update to the nozh_full housekeeping
cpumask (HK_TYPE_KERNEL_NOISE) soon with the help of CPU hotplug,
allowing the CPU hotplug path to call into housekeeping_update() directly
from update_isolation_cpumasks() will likely cause deadlock. So we
have to defer any call to housekeeping_update() after the CPU hotplug
operation has finished. This is now done via the workqueue where
the update_hk_sched_domains() function will be invoked via the
hk_sd_workfn().

An concurrent cpuset control file write may have executed the required
update_hk_sched_domains() function before the work function is called. So
the work function call may become a no-op when it is invoked.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
2026-02-23 10:42:11 -10:00
..
lib selftests: cgroup: Add cg_read_key_long_poll() to poll a cgroup key with retries 2025-12-08 08:44:54 -10:00
.gitignore
Makefile cgroup: selftests: Move cgroup_util into its own library 2025-05-16 11:45:15 -07:00
config
memcg_protection.m
test_core.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
test_cpu.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
test_cpuset.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
test_cpuset_prs.sh cgroup/cpuset: Defer housekeeping_update() calls from CPU hotplug to workqueue 2026-02-23 10:42:11 -10:00
test_cpuset_v1_base.sh cgroup/cpuset: add sefltest for cpuset v1 2024-08-30 10:00:17 -10:00
test_cpuset_v1_hp.sh selftests/cgroup: use bash in test_cpuset_v1_hp.sh 2025-02-04 09:36:54 -10:00
test_freezer.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
test_hugetlb_memcg.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
test_kill.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
test_kmem.c selftests: cgroup: Replace sleep with cg_read_key_long_poll() for waiting on nr_dying_descendants 2025-12-08 08:44:54 -10:00
test_memcontrol.c selftests: cgroup: make test_memcg_sock robust against delayed sock stats 2025-12-08 08:44:54 -10:00
test_pids.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
test_stress.sh
test_zswap.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
wait_inotify.c
with_stress.sh