From: Michael Ryan <[email protected]>
[patch 7/24] s390: cpu up retries.
Retry starting of new cpu if sigp restart returns condition code 2 (busy).
Signed-off-by: Michael Ryan <[email protected]>
Signed-off-by: Martin Schwidefsky <[email protected]>
---
arch/s390/kernel/smp.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletion(-)
diff -urpN linux-2.6/arch/s390/kernel/smp.c linux-2.6-patched/arch/s390/kernel/smp.c
--- linux-2.6/arch/s390/kernel/smp.c 2006-03-20 06:53:29.000000000 +0100
+++ linux-2.6-patched/arch/s390/kernel/smp.c 2006-03-22 14:36:17.000000000 +0100
@@ -665,7 +665,9 @@ __cpu_up(unsigned int cpu)
cpu_lowcore->current_task = (unsigned long) idle;
cpu_lowcore->cpu_data.cpu_nr = cpu;
eieio();
- signal_processor(cpu,sigp_restart);
+
+ while (signal_processor(cpu,sigp_restart) == sigp_busy)
+ udelay(10);
while (!cpu_online(cpu))
cpu_relax();