x86: schedule work only if keventd is already running
Only call schedule_work if keventd is already running. This is already the way x86_64 does Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
e7f8b14e02
commit
802b8133b4
|
@ -708,8 +708,12 @@ static void __cpuinit __smp_prepare_cpu(int cpu)
|
|||
clone_pgd_range(swapper_pg_dir, swapper_pg_dir + USER_PGD_PTRS,
|
||||
min_t(unsigned long, KERNEL_PGD_PTRS, USER_PGD_PTRS));
|
||||
flush_tlb_all();
|
||||
schedule_work(&info.task);
|
||||
wait_for_completion(&done);
|
||||
if (!keventd_up() || current_is_keventd())
|
||||
info.task.func(&info.task);
|
||||
else {
|
||||
schedule_work(&info.task);
|
||||
wait_for_completion(&done);
|
||||
}
|
||||
|
||||
zap_low_mappings();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue