Re: [PATCH] ftrace: fix address for jmp mode in t_show

From: Steven Rostedt

Date: Tue Dec 16 2025 - 11:32:26 EST


On Tue, 16 Dec 2025 11:45:33 +0800
Menglong Dong <menglong8.dong@xxxxxxxxx> wrote:

> diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
> index bbb37c0f8c6c..d4c41fb76a25 100644
> --- a/kernel/trace/ftrace.c
> +++ b/kernel/trace/ftrace.c
> @@ -4492,8 +4492,12 @@ static int t_show(struct seq_file *m, void *v)
> unsigned long direct;
>
> direct = ftrace_find_rec_direct(rec->ip);
> - if (direct)
> - seq_printf(m, "\n\tdirect-->%pS", (void *)direct);
> + if (direct) {
> + seq_printf(m, ftrace_is_jmp(direct) ?
> + "\n\tdirect(jmp)-->%pS" :
> + "\n\tdirect-->%pS",
> + (void *)ftrace_jmp_get(direct));

A little cleaner way to do the above:

seq_printf(m, "\n\tdirect%s-->%pS",
ftrace_is_jmp(direct) ? "(jmp)" : "",
(void *)ftrace_jmp_get(direct));


-- Steve

> + }
> }
> }