aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristos Margiolis <christos@FreeBSD.org>2023-04-20 16:24:03 +0000
committerMark Johnston <markj@FreeBSD.org>2023-05-07 17:54:08 +0000
commitfacd3a41d9d1d27a2cd96ba855fc73b702caa3db (patch)
treeda10b2bb61b2661213d99d47d820f9c8c7f8e75e
parent4d9000cb22a9b17df4815df5f34773cf8862383a (diff)
downloadsrc-facd3a41d9d1d27a2cd96ba855fc73b702caa3db.tar.gz
src-facd3a41d9d1d27a2cd96ba855fc73b702caa3db.zip
dtrace: use dtrace_instr_size() in the riscv dtrace_subr.c
No functional change intended. Reviewed by: mhorne, markj MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39652 (cherry picked from commit 75081b9ed8e67c8443551828f1b5ccf3d449b41b)
-rw-r--r--sys/cddl/dev/dtrace/riscv/dtrace_subr.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/sys/cddl/dev/dtrace/riscv/dtrace_subr.c b/sys/cddl/dev/dtrace/riscv/dtrace_subr.c
index f32bb3a2343e..3d43adb8a92f 100644
--- a/sys/cddl/dev/dtrace/riscv/dtrace_subr.c
+++ b/sys/cddl/dev/dtrace/riscv/dtrace_subr.c
@@ -190,8 +190,6 @@ dtrace_gethrestime(void)
int
dtrace_trap(struct trapframe *frame, u_int type)
{
- uint16_t insn;
-
/*
* A trap can occur while DTrace executes a probe. Before
* executing the probe, DTrace blocks re-scheduling and sets
@@ -219,15 +217,10 @@ dtrace_trap(struct trapframe *frame, u_int type)
/*
* Offset the instruction pointer to the instruction
- * following the one causing the fault. Check if the
- * instruction is compressed or not. Standard
- * instructions always have bits [1:0] == 11.
+ * following the one causing the fault.
*/
- insn = *(uint16_t *)frame->tf_sepc;
- if (match_opcode(insn, 0x3, 0x3))
- frame->tf_sepc += INSN_SIZE;
- else
- frame->tf_sepc += INSN_C_SIZE;
+ frame->tf_sepc +=
+ dtrace_instr_size((uint8_t *)frame->tf_sepc);
return (1);
default: