sched: move watchdog_disable() call before isolation work
Commit be45bf53 ("watchdog/softlockup: Fix cpu_stop_queue_work() double-queue bug") added wait_for_completion() call in watchdog_disable() which leads to below issue when we try to isolate any CPU. Fix it by moving watchdog_disable() call. [ 207.300191] BUG: sleeping function called from invalid context at \ kernel/sched/completion.c:99 [ 208.006089] ___might_sleep+0x1c8/0x1e0 [ 208.010032] __might_sleep+0x50/0x88 [ 208.013709] wait_for_completion+0x28/0x60 [ 208.017919] watchdog_disable+0x70/0x90 [ 208.021860] do_isolation_work_cpu_stop+0x54/0x200 [ 208.026784] cpu_stopper_thread+0xac/0x150 [ 208.030993] smpboot_thread_fn+0x1c8/0x2e8 [ 208.035202] kthread+0x11c/0x130 [ 208.038526] ret_from_fork+0x10/0x1c. Change-Id: I4d928dc03c71e68604c61c4986675fd629b69d1d Signed-off-by:Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Loading
Please register or sign in to comment