On Mon, 6 Nov 2023 00:17:34 +0100 Peter Zijlstra <pet...@infradead.org> wrote:
> Changelog nor code made it clear this was partial anything. So this is > still the partial thing? > > Can we then pretty clear clarify all that, and make it clear which regs > are in there? Because when I do 'vim -t ftrace_regs' it just gets me a > seemingly pointless wrapper struct, no elucidating comments nothingses. I agree it should be better documented (like everything else). The ftrace_regs must have all the registers needed to produce a function's arguments. For x86_64, that would be: rdi, rsi, rdx, r8, r9, rsp Basically anything that is needed to call mcount/fentry. But yes, it's still partial registers but for archs that support FTRACE_WITH_REGS, it can also hold all pt_regs which can be retrieved by the arch_ftrace_get_regs(), which is why there's a pt_regs struct in the x86 version. But that's not the case for arm64, as arch_ftrace_get_regs() will always return NULL. > > > You even Acked the patch: > > > > commit 02a474ca266a47ea8f4d5a11f4ffa120f83730ad > > Author: Steven Rostedt (VMware) <rost...@goodmis.org> > > Date: Tue Oct 27 10:55:55 2020 -0400 > > You expect me to remember things from 3 years ago? Heh, of course not. I just thought it amusing that I created ftrace_regs because of you and then 3 years later you ask to get rid of it. But the real issue is that it's not documented clearly why it exists, and that should be rectified. Thanks, -- Steve