aboutsummaryrefslogtreecommitdiff
path: root/sys/riscv
diff options
context:
space:
mode:
authorEdward Tomasz Napierala <trasz@FreeBSD.org>2020-10-08 11:04:32 +0000
committerEdward Tomasz Napierala <trasz@FreeBSD.org>2020-10-08 11:04:32 +0000
commit5319fa1b3ec07e09c7b073fa558e193b716815e5 (patch)
tree78d717a8e666f991fa3c744c55b61810c5c509ab /sys/riscv
parentd6dbbdea20be99f1e4f9ba9eab61ba81067ec8f3 (diff)
downloadsrc-5319fa1b3ec07e09c7b073fa558e193b716815e5.tar.gz
src-5319fa1b3ec07e09c7b073fa558e193b716815e5.zip
Remove yet another useless assignment, adding a KASSERT just in case.
Reviewed by: kp Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D26698
Notes
Notes: svn path=/head/; revision=366534
Diffstat (limited to 'sys/riscv')
-rw-r--r--sys/riscv/riscv/trap.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/sys/riscv/riscv/trap.c b/sys/riscv/riscv/trap.c
index f5aff2601336..b483659dcd8e 100644
--- a/sys/riscv/riscv/trap.c
+++ b/sys/riscv/riscv/trap.c
@@ -158,15 +158,12 @@ dump_regs(struct trapframe *frame)
}
static void
-ecall_handler(struct trapframe *frame)
+ecall_handler(void)
{
struct thread *td;
td = curthread;
- KASSERT(td->td_frame == frame,
- ("%s: td_frame %p != frame %p", __func__, td->td_frame, frame));
-
syscallenter(td);
syscallret(td);
}
@@ -324,9 +321,11 @@ do_trap_user(struct trapframe *frame)
struct pcb *pcb;
td = curthread;
- td->td_frame = frame;
pcb = td->td_pcb;
+ KASSERT(td->td_frame == frame,
+ ("%s: td_frame %p != frame %p", __func__, td->td_frame, frame));
+
/* Ensure we came from usermode, interrupts disabled */
KASSERT((csr_read(sstatus) & (SSTATUS_SPP | SSTATUS_SIE)) == 0,
("Came from U mode with interrupts enabled"));
@@ -357,7 +356,7 @@ do_trap_user(struct trapframe *frame)
break;
case EXCP_USER_ECALL:
frame->tf_sepc += 4; /* Next instruction */
- ecall_handler(frame);
+ ecall_handler();
break;
case EXCP_ILLEGAL_INSTRUCTION:
#ifdef FPE