Revision 129d8aa5 linux-user/main.c
b/linux-user/main.c | ||
---|---|---|
2524 | 2524 |
env->lock_addr = -1; |
2525 | 2525 |
info.si_signo = TARGET_SIGSEGV; |
2526 | 2526 |
info.si_errno = 0; |
2527 |
info.si_code = (page_get_flags(env->ipr[IPR_EXC_ADDR]) & PAGE_VALID
|
|
2527 |
info.si_code = (page_get_flags(env->trap_arg0) & PAGE_VALID
|
|
2528 | 2528 |
? TARGET_SEGV_ACCERR : TARGET_SEGV_MAPERR); |
2529 |
info._sifields._sigfault._addr = env->ipr[IPR_EXC_ADDR];
|
|
2529 |
info._sifields._sigfault._addr = env->trap_arg0;
|
|
2530 | 2530 |
queue_signal(env, info.si_signo, &info); |
2531 | 2531 |
break; |
2532 | 2532 |
case EXCP_DTB_MISS_PAL: |
... | ... | |
2550 | 2550 |
info.si_signo = TARGET_SIGBUS; |
2551 | 2551 |
info.si_errno = 0; |
2552 | 2552 |
info.si_code = TARGET_BUS_ADRALN; |
2553 |
info._sifields._sigfault._addr = env->ipr[IPR_EXC_ADDR];
|
|
2553 |
info._sifields._sigfault._addr = env->trap_arg0;
|
|
2554 | 2554 |
queue_signal(env, info.si_signo, &info); |
2555 | 2555 |
break; |
2556 | 2556 |
case EXCP_OPCDEC: |
Also available in: Unified diff