cpu/hotplug: Ensure that sched domains are rebuilt before hotplug
When cpusets are enabled, the rebuilding of the scheduling domains
is deferred to a workqueue context. Make sure that the work is
completed before proceeding to the next hotplug. Otherwise scheduler
observes an inconsistent view of online and offline CPUs in the
root domain. If the online CPUs are still stuck in the offline i.e
default domain, those CPUs would not be visible when scheduling
happens on from other CPUs in the root domain. This results in
packing tasks more on certain CPUs while leaving the other CPUs
idle. Also RT_RUNTIME_SHARE feature i.e borrowing RT runtime from
the other CPUs would not work correctly. Because the CPUs in the
root domain can't borrow the runtime from the online CPUs but stuck
in the offline/default domain.
Change-Id: I93c51d2abc8a9c099b62f1d2cbb9095d3a788bda
Signed-off-by:
Pavankumar Kondeti <pkondeti@codeaurora.org>
Loading
Please register or sign in to comment