BACKPORT: cgroup/cpuset: Free DL BW in case can_attach() fails
cpuset_can_attach() can fail. Postpone DL BW allocation until all tasks have been checked. DL BW is not allocated per-task but as a sum over all DL tasks migrating. If multiple controllers are attached to the cgroup next to the cpuset controller a non-cpuset can_attach() can fail. In this case free DL BW in cpuset_cancel_attach(). Finally, update cpuset DL task count (nr_deadline_tasks) only in cpuset_attach(). Bug: 238390134 Suggested-by:Waiman Long <longman@redhat.com> Signed-off-by:
Dietmar Eggemann <dietmar.eggemann@arm.com> Signed-off-by:
Juri Lelli <juri.lelli@redhat.com> Reviewed-by:
Waiman Long <longman@redhat.com> Signed-off-by:
Tejun Heo <tj@kernel.org> (cherry picked from commit 2ef269ef https://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git cgroup/for-6.5) [Conflict where we try to pull extra new code that is not applicable for 5.15, reject the new code] Signed-off-by:
Qais Yousef <qyousef@google.com> Change-Id: I54944463706cfb91cd441f003d54f78539d15316
Loading
Please sign in to comment