main: kernel_start: move housekeeping_init() before workqueue_init_early()

This is needed in order to allow the unbound workqueue to take
housekeeping cpus into accounty

Signed-off-by: Tal Shorer <[email protected]>
Signed-off-by: Tejun Heo <[email protected]>
This commit is contained in:
Tal Shorer 2017-11-03 17:27:49 +02:00 • committed by Tejun Heo
commit 7d229c668a

View file

@ -588,6 +588,12 @@ asmlinkage __visible void __init start_kernel(void)
local_irq_disable();
radix_tree_init();
/*
* Set up housekeeping before setting up workqueues to allow the unbound
* workqueue to take non-housekeeping into account.
*/
housekeeping_init();
/*
* Allow workqueue creation and work item queueing/cancelling
* early. Work item execution depends on kthreads and starts after
@ -605,7 +611,6 @@ asmlinkage __visible void __init start_kernel(void)
early_irq_init();
init_IRQ();
tick_init();
housekeeping_init();
rcu_init_nohz();
init_timers();
hrtimers_init();