svn commit: r363615 - head/sys/arm/arm
John Baldwin
jhb at FreeBSD.org
Mon Jul 27 16:29:22 UTC 2020
Author: jhb
Date: Mon Jul 27 16:29:21 2020
New Revision: 363615
URL: https://svnweb.freebsd.org/changeset/base/363615
Log:
Set si_trapno to the fault index from fsr.
Reviewed by: kib
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D25772
Modified:
head/sys/arm/arm/trap-v6.c
Modified: head/sys/arm/arm/trap-v6.c
==============================================================================
--- head/sys/arm/arm/trap-v6.c Mon Jul 27 16:28:44 2020 (r363614)
+++ head/sys/arm/arm/trap-v6.c Mon Jul 27 16:29:21 2020 (r363615)
@@ -169,7 +169,8 @@ static const struct abort aborts[] = {
};
static __inline void
-call_trapsignal(struct thread *td, int sig, int code, vm_offset_t addr)
+call_trapsignal(struct thread *td, int sig, int code, vm_offset_t addr,
+ int trapno)
{
ksiginfo_t ksi;
@@ -185,6 +186,7 @@ call_trapsignal(struct thread *td, int sig, int code,
ksi.ksi_signo = sig;
ksi.ksi_code = code;
ksi.ksi_addr = (void *)addr;
+ ksi.ksi_trapno = trapno;
trapsignal(td, &ksi);
}
@@ -252,7 +254,7 @@ abort_debug(struct trapframe *tf, u_int fsr, u_int pre
struct thread *td;
td = curthread;
- call_trapsignal(td, SIGTRAP, TRAP_BRKPT, far);
+ call_trapsignal(td, SIGTRAP, TRAP_BRKPT, far, FAULT_DEBUG);
userret(td, tf);
} else {
#ifdef KDB
@@ -523,7 +525,7 @@ nogo:
ksig.addr = far;
do_trapsignal:
- call_trapsignal(td, ksig.sig, ksig.code, ksig.addr);
+ call_trapsignal(td, ksig.sig, ksig.code, ksig.addr, idx);
out:
if (usermode)
userret(td, tf);
More information about the svn-src-all
mailing list