Moves the printfs & setting of stopped_ok out of the protected area. Signed-off-by: Michael Ellerman <mich...@ellerman.id.au> --- arch/powerpc/xmon/xmon.c | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-)
diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c index 0fefe03..abc89a4 100644 --- a/arch/powerpc/xmon/xmon.c +++ b/arch/powerpc/xmon/xmon.c @@ -2994,15 +2994,11 @@ static void stop_spus(void) if (!spu_info[i].spu) continue; - if (setjmp(bus_error_jmp) != 0) { - catch_memory_errors = 0; + if (start_bus_error_jump() != 0) { printf("*** Error stopping spu %.2d\n", i); continue; } - catch_memory_errors = 1; - sync(); - spu = spu_info[i].spu; spu_info[i].saved_spu_runcntl_RW = @@ -3014,16 +3010,13 @@ static void stop_spus(void) tmp &= ~MFC_STATE1_MASTER_RUN_CONTROL_MASK; spu_mfc_sr1_set(spu, tmp); - sync(); - __delay(200); + end_bus_error_jump(); spu_info[i].stopped_ok = 1; printf("Stopped spu %.2d (was %s)\n", i, spu_info[i].saved_spu_runcntl_RW ? "running" : "stopped"); - - catch_memory_errors = 0; } } @@ -3042,26 +3035,19 @@ static void restart_spus(void) continue; } - if (setjmp(bus_error_jmp) != 0) { - catch_memory_errors = 0; + if (start_bus_error_jump() != 0) { printf("*** Error restarting spu %.2d\n", i); continue; } - catch_memory_errors = 1; - sync(); - spu = spu_info[i].spu; spu_mfc_sr1_set(spu, spu_info[i].saved_mfc_sr1_RW); out_be32(&spu->problem->spu_runcntl_RW, spu_info[i].saved_spu_runcntl_RW); - sync(); - __delay(200); + end_bus_error_jump(); printf("Restarted spu %.2d\n", i); - - catch_memory_errors = 0; } } -- 1.7.9.5 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev