2017-11-03 15:28:55

by Tal Shorer

[permalink] [raw]
Subject: [PATCH v3 1/2] 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]>
---
init/main.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/init/main.c b/init/main.c
index 4610c99..af6ecd0 100644
--- a/init/main.c
+++ b/init/main.c
@@ -591,6 +591,12 @@ asmlinkage __visible void __init start_kernel(void)
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
* workqueue_init().
@@ -607,7 +613,6 @@ asmlinkage __visible void __init start_kernel(void)
early_irq_init();
init_IRQ();
tick_init();
- housekeeping_init();
rcu_init_nohz();
init_timers();
hrtimers_init();
--
2.7.4


From 1583132564535232463@xxx Sat Nov 04 10:54:26 +0000 2017
X-GM-THRID: 1583132564535232463
X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread