Message ID | 20241008230527.674939311@goodmis.org (mailing list archive) |
---|---|
Headers | show |
Series | ftrace: Make ftrace_regs abstract and consolidate code | expand |
On Tue, Oct 08, 2024 at 07:05:27PM -0400, Steven Rostedt wrote: > > This is based on: > > https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git/ > ftrace/for-next > > ftrace_regs was created to hold registers that store information to save > function parameters, return value and stack. Since it is a subset of > pt_regs, it should only be used by its accessor functions. But because > pt_regs can easily be taken from ftrace_regs (on most archs), it is > tempting to use it directly. But when running on other architectures, it > may fail to build or worse, build but crash the kernel! > > Instead, make struct ftrace_regs an empty structure and have the > architectures define __arch_ftrace_regs and all the accessor functions > will typecast to it to get to the actual fields. This will help avoid > usage of ftrace_regs directly. > > I again compiled all the affected architectures (except for 32bit ppc). > I got s390 built when disabling bcachefs. Build fix for this problem is commit 2007d28ec009 ("bcachefs: rename version -> bversion for big endian builds").