]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
main: kernel_start: move housekeeping_init() before workqueue_init_early()
authorTal Shorer <tal.shorer@gmail.com>
Fri, 3 Nov 2017 15:27:49 +0000 (17:27 +0200)
committerTejun Heo <tj@kernel.org>
Mon, 27 Nov 2017 16:56:57 +0000 (08:56 -0800)
This is needed in order to allow the unbound workqueue to take
housekeeping cpus into accounty

Signed-off-by: Tal Shorer <tal.shorer@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
init/main.c

index dfec3809e7404f9658d51a20aae3869cd7aab9c3..e96e3a14533cda199963fe96b97dc78779c66037 100644 (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();