diff options
author | skra <skra@FreeBSD.org> | 2015-11-06 23:17:00 +0000 |
---|---|---|
committer | skra <skra@FreeBSD.org> | 2015-11-06 23:17:00 +0000 |
commit | 01e556384d74d2463284757425be4237d7a27db1 (patch) | |
tree | b9cb64ded2b466110f1e07df919f518d9de961e0 /sys/arm | |
parent | 7ba24ae6368d9df17036f1b6bc36729c45bc8317 (diff) | |
download | FreeBSD-src-01e556384d74d2463284757425be4237d7a27db1.zip FreeBSD-src-01e556384d74d2463284757425be4237d7a27db1.tar.gz |
Set correct code for signal in abort_align() routine.
Remove superfluous printf() and both unnecessary and obsolete comments.
Approved by: kib (mentor)
Diffstat (limited to 'sys/arm')
-rw-r--r-- | sys/arm/arm/trap-v6.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/sys/arm/arm/trap-v6.c b/sys/arm/arm/trap-v6.c index b53cb25..6dd38eb 100644 --- a/sys/arm/arm/trap-v6.c +++ b/sys/arm/arm/trap-v6.c @@ -620,26 +620,17 @@ abort_align(struct trapframe *tf, u_int idx, u_int fsr, u_int far, u_int usermode; usermode = TRAPF_USERMODE(tf); - - /* - * Alignment faults are always fatal if they occur in any but user mode. - * - * XXX The old trap code handles pcb fault even for alignment traps. - * Unfortunately, we don't known why and if is this need. - */ if (!usermode) { if (td->td_intr_nesting_level == 0 && td != NULL && td->td_pcb->pcb_onfault != NULL) { - printf("%s: Got alignment fault with pcb_onfault set" - ", please report this issue\n", __func__); - tf->tf_r0 = EFAULT;; + tf->tf_r0 = EFAULT; tf->tf_pc = (int)td->td_pcb->pcb_onfault; return (0); } abort_fatal(tf, idx, fsr, far, prefetch, td, ksig); } /* Deliver a bus error signal to the process */ - ksig->code = 0; + ksig->code = BUS_ADRALN; ksig->sig = SIGBUS; ksig->addr = far; return (1); |