]> err.no Git - linux-2.6/commitdiff
[PATCH] s390: cpu up retries
authorMichael Ryan <ryan@funsoft.com>
Fri, 24 Mar 2006 11:15:17 +0000 (03:15 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 24 Mar 2006 15:33:16 +0000 (07:33 -0800)
Retry starting of new cpu if sigp restart returns condition code 2 (busy).

Signed-off-by: Michael Ryan <ryan@funsoft.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/s390/kernel/smp.c

index d52d6d211d9f6d644b2f2f7115b90dedf5dde34d..2b8841f85534ae199c7af971215a95d5e11a0283 100644 (file)
@@ -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();