Re: [PATCH v5 22/29] sched/deadline: Make a rebuild use the CPU recorded with a task's bandwidth

From: Mathieu Desnoyers

Date: Sun Nov 08 2026 - 21:58:21 EST


On 2026-11-08 14:25, sashiko-bot@xxxxxxxxxx wrote:
> wrong root domain in dl_task_rebuild_cpu() on empty mask

Thanks. The path is as you describe, but the partition is where the task
runs. At its wakeup, select_fallback_rq() widens the mask of a task of
the top cpuset to top_cpuset.cpus_allowed, which is cpu_possible_mask in
cgroup v2. It then takes the lowest active CPU, CPU 0, in the new
partition. Had the rebuild asked the cpuset, the top root domain would
count the task. Its wakeup would then move the bandwidth into the
partition without room. The case also needs admission control off: with
it on, a deadline task's mask must hold its root domain.

You are right that the test of the record after the cpuset fallback
cannot succeed. It serves the other path, where the mask has an active
CPU. The next version makes that an else branch.

Thanks,

Mathieu

--
Mathieu Desnoyers
EfficiOS Inc.
https://www.efficios.com