Page MenuHomeFreeBSD

D28054.diff
No OneTemporary

D28054.diff

diff --git a/sys/cddl/dev/dtrace/riscv/dtrace_isa.c b/sys/cddl/dev/dtrace/riscv/dtrace_isa.c
--- a/sys/cddl/dev/dtrace/riscv/dtrace_isa.c
+++ b/sys/cddl/dev/dtrace/riscv/dtrace_isa.c
@@ -150,9 +150,8 @@
if (fp == 0)
break;
- pc = dtrace_fuword64((void *)(fp +
- offsetof(struct riscv_frame, f_retaddr)));
- fp = dtrace_fuword64((void *)fp);
+ pc = dtrace_fuword64((void *)(fp - 1 * sizeof(uint64_t)));
+ fp = dtrace_fuword64((void *)(fp - 2 * sizeof(uint64_t)));
if (fp == oldfp) {
*flags |= CPU_DTRACE_BADSTACK;
diff --git a/sys/riscv/include/frame.h b/sys/riscv/include/frame.h
--- a/sys/riscv/include/frame.h
+++ b/sys/riscv/include/frame.h
@@ -59,11 +59,6 @@
uint64_t tf_scause;
};
-struct riscv_frame {
- struct riscv_frame *f_frame;
- u_long f_retaddr;
-};
-
/*
* Signal frame. Pushed onto user stack before calling sigcode.
*/

File Metadata

Mime Type
text/plain
Expires
Thu, Nov 7, 8:34 AM (22 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14507666
Default Alt Text
D28054.diff (874 B)

Event Timeline