Thread (26 messages) 26 messages, 3 authors, 2023-08-18

Re: [PATCH v3 4/8] fprobe: rethook: Use ftrace_regs in fprobe exit handler and rethook

From: Florent Revest <hidden>
Date: 2023-08-17 08:58:30
Also in: bpf, lkml

On Sat, Aug 12, 2023 at 7:37 AM Masami Hiramatsu (Google)
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index 976fd594b446..d56304276318 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -57,6 +57,13 @@ config HAVE_DYNAMIC_FTRACE_WITH_ARGS
         This allows for use of ftrace_regs_get_argument() and
         ftrace_regs_get_stack_pointer().

+config HAVE_PT_REGS_TO_FTRACE_REGS_CAST
+       bool
+       help
+        If this is set, the memory layout of the ftrace_regs data structure
+        is the same as the pt_regs. So the pt_regs is possible to be casted
+        to ftrace_regs.
What would you think of introducing a:

#ifdef HAVE_PT_REGS_TO_FTRACE_REGS_CAST
static_assert(sizeof(struct pt_regs) == sizeof(struct ftrace_regs);
#endif // HAVE_PT_REGS_TO_FTRACE_REGS_CAST

somewhere in ftrace.h just as a small extra safety net ? It doesn't
exactly guarantee all we want but it should give an early warning of
mistakes.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help