From c6587df2f6232f97be393985c714db75a5e13539 Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Sat, 18 Oct 2008 13:23:10 +0100 Subject: [PATCH] --- yaml --- r: 117895 b: refs/heads/master c: 7920c4d658ff2b0f7b8acf3bd7c700875c2bc163 h: refs/heads/master i: 117893: 756fa007ceda6b364aee581dff1161f2644ff27c 117891: cb805a0209c92e17cce167b5843c55b315472a76 117887: 4c4054b4506f95a26fb47cc9f7260bad6ff1649e v: v3 --- [refs] | 2 +- trunk/arch/mips/kernel/smp.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index ad6f1da72f3a..48f302e11444 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f67ae98352284d7ac1e03f3a872e33c68ea35a5b +refs/heads/master: 7920c4d658ff2b0f7b8acf3bd7c700875c2bc163 diff --git a/trunk/arch/mips/kernel/smp.c b/trunk/arch/mips/kernel/smp.c index 7b59cfb7e602..b79ea7055ec3 100644 --- a/trunk/arch/mips/kernel/smp.c +++ b/trunk/arch/mips/kernel/smp.c @@ -163,8 +163,10 @@ static void stop_this_cpu(void *dummy) * Remove this CPU: */ cpu_clear(smp_processor_id(), cpu_online_map); - local_irq_enable(); /* May need to service _machine_restart IPI */ - for (;;); /* Wait if available. */ + for (;;) { + if (cpu_wait) + (*cpu_wait)(); /* Wait if available. */ + } } void smp_send_stop(void)