aboutsummaryrefslogtreecommitdiff
path: root/core/cpu.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-08-21 03:21:33 +1000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-08-21 03:21:33 +1000
commitc34c4ef8c660e3e439365c8f5c06143ff00bc6bc (patch)
treebb6cb7c5bc551449873d39f58c2a44da540bbd8c /core/cpu.c
parent58cb9983c4d832e1f4f6e1aaec164224d567af41 (diff)
downloadskiboot-c34c4ef8c660e3e439365c8f5c06143ff00bc6bc.zip
skiboot-c34c4ef8c660e3e439365c8f5c06143ff00bc6bc.tar.gz
skiboot-c34c4ef8c660e3e439365c8f5c06143ff00bc6bc.tar.bz2
cpu: Bump the reinit timeout up to 1s
Probably due to the way we spin, we seem to still be hitting the odd case where we fail to reinit due to a secondary not having quite reached the right state inside skiboot. Let's bump the timeout up. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'core/cpu.c')
-rw-r--r--core/cpu.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/core/cpu.c b/core/cpu.c
index 7ce7c60..d562806 100644
--- a/core/cpu.c
+++ b/core/cpu.c
@@ -641,7 +641,8 @@ static int64_t opal_reinit_cpus(uint64_t flags)
* That might be a race with return CPU during kexec
* where we are still, wait a bit and try again
*/
- for (i = 0; (i < 3) && (cpu->state == cpu_state_os); i++)
+ for (i = 0; (i < 1000) &&
+ (cpu->state == cpu_state_os); i++)
time_wait_ms(1);
if (cpu->state == cpu_state_os) {
prerror("OPAL: CPU 0x%x not in OPAL !\n", cpu->pir);