Re: [PATCH] ftrace: Make ftrace_regs abstract from direct use

From: Steven Rostedt
Date: Mon Oct 07 2024 - 20:55:11 EST


On Mon, 7 Oct 2024 20:47:43 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> +#ifndef CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS
> +struct __arch_ftrace_regs {
> + struct pt_regs regs;
> +};
> +
> +#define arch_ftrace_get_regs(fregs) \
> + ({ struct __arch_fregs_regs *__f = (struct __arch_ftrace_regs *)(fregs); \
> + &__f->regs; \
> + })

I wrote the arch_ftrace_get_regs() at the start of creating this patch.

> +
> +struct ftrace_regs;
> +#define arch_ftrace_regs(fregs) ((struct __arch_ftrace_regs *)(fregs))
> +

I just realized I can simplify it with:

#define arch_ftrace_get_regs(fregs) ({ &arch_ftrace_regs(fregs)->regs; })

I may send a v2 (tomorrow).

-- Steve