Re: [PATCHv2 bpf-next 1/2] arm64/ftrace,bpf: Fix partial regs after bpf_prog_run
From: bot+bpf-ci@kernel.org
Date: 2026-01-09 10:00:32
Also in:
bpf, linux-arm-kernel
quoted hunk ↗ jump to hunk
diff --git a/include/linux/ftrace_regs.h b/include/linux/ftrace_regs.h index 15627ceea9bc..f9a7c009cdae 100644 --- a/include/linux/ftrace_regs.h +++ b/include/linux/ftrace_regs.h@@ -33,6 +33,31 @@ struct ftrace_regs;
[ ... ]
+#else + +/* + * ftrace_partial_regs_update - update the original ftrace_regs from regs + * @fregs: The ftrace_regs to update from @regs + * @regs: The partial regs from ftrace_partial_regs() that was updated
[ ... ]
+ */
+static __always_inline void
+ftrace_partial_regs_update(const struct ftrace_regs *fregs, struct pt_regs *regs)
+{
+ ftrace_regs_set_instruction_pointer(fregs, instruction_pointer(regs));
+ ftrace_regs_set_return_value(fregs, regs_return_value(regs));^^^^^ Should the fregs parameter be non-const here? On architectures with HAVE_ARCH_FTRACE_REGS (arm64, riscv), the setter functions expect a non-const pointer: ftrace_regs_set_instruction_pointer(struct ftrace_regs *fregs, ...) ftrace_regs_set_return_value(struct ftrace_regs *fregs, ...) Passing the const-qualified fregs to these functions discards the const qualifier, which may cause compiler warnings with -Werror or undefined behavior since the setters do modify the ftrace_regs structure.
+} +
[ ... ] --- AI reviewed your patch. Please fix the bug or email reply why it's not a bug. See: https://github.com/kernel-patches/vmtest/blob/master/ci/claude/README.md CI run summary: https://github.com/kernel-patches/bpf/actions/runs/20847954035