mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
Do not allow PowerPC CPU restart after entering checkstop mode.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3388 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
22f8a8b31c
commit
e63ecc6f68
2 changed files with 13 additions and 12 deletions
|
@ -2156,10 +2156,18 @@ static always_inline void powerpc_excp (CPUState *env,
|
|||
goto store_next;
|
||||
case POWERPC_EXCP_MCHECK: /* Machine check exception */
|
||||
if (msr_me == 0) {
|
||||
/* Machine check exception is not enabled */
|
||||
/* XXX: we may just stop the processor here, to allow debugging */
|
||||
excp = POWERPC_EXCP_RESET;
|
||||
goto excp_reset;
|
||||
/* Machine check exception is not enabled.
|
||||
* Enter checkstop state.
|
||||
*/
|
||||
if (loglevel != 0) {
|
||||
fprintf(logfile, "Machine check while not allowed. "
|
||||
"Entering checkstop state\n");
|
||||
} else {
|
||||
fprintf(stderr, "Machine check while not allowed. "
|
||||
"Entering checkstop state\n");
|
||||
}
|
||||
env->halted = 1;
|
||||
env->interrupt_request |= CPU_INTERRUPT_EXITTB;
|
||||
}
|
||||
msr_ri = 0;
|
||||
msr_me = 0;
|
||||
|
@ -2413,7 +2421,6 @@ static always_inline void powerpc_excp (CPUState *env,
|
|||
#if defined(TARGET_PPC64H)
|
||||
msr_hv = 1;
|
||||
#endif
|
||||
excp_reset:
|
||||
goto store_next;
|
||||
#if defined(TARGET_PPC64)
|
||||
case POWERPC_EXCP_DSEG: /* Data segment exception */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue