Message ID | 20220113170456.1796911-2-matheus.ferst@eldorado.org.br (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | linux-user/ppc: Deliver SIGTRAP on tw[i]/td[i] | expand |
Le 13/01/2022 à 18:04, matheus.ferst@eldorado.org.br a écrit : > From: Matheus Ferst <matheus.ferst@eldorado.org.br> > > Handle POWERPC_EXCP_TRAP in cpu_loop to deliver SIGTRAP on tw[i]/td[i]. > The si_code comes from do_program_check in the kernel source file > arch/powerpc/kernel/traps.c > > Reviewed-by: Richard Henderson <richard.henderson@linaro.org> > Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br> > --- > linux-user/ppc/cpu_loop.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/linux-user/ppc/cpu_loop.c b/linux-user/ppc/cpu_loop.c > index 46e6ffd6d3..6c99feb19b 100644 > --- a/linux-user/ppc/cpu_loop.c > +++ b/linux-user/ppc/cpu_loop.c > @@ -188,7 +188,8 @@ void cpu_loop(CPUPPCState *env) > } > break; > case POWERPC_EXCP_TRAP: > - cpu_abort(cs, "Tried to call a TRAP\n"); > + si_signo = TARGET_SIGTRAP; > + si_code = TARGET_TRAP_BRKPT; > break; > default: > /* Should not happen ! */ Applied to my linux-user-for-7.0 branch. Thanks, Laurent
diff --git a/linux-user/ppc/cpu_loop.c b/linux-user/ppc/cpu_loop.c index 46e6ffd6d3..6c99feb19b 100644 --- a/linux-user/ppc/cpu_loop.c +++ b/linux-user/ppc/cpu_loop.c @@ -188,7 +188,8 @@ void cpu_loop(CPUPPCState *env) } break; case POWERPC_EXCP_TRAP: - cpu_abort(cs, "Tried to call a TRAP\n"); + si_signo = TARGET_SIGTRAP; + si_code = TARGET_TRAP_BRKPT; break; default: /* Should not happen ! */