Re: [PATCH] ftrace: Fix regression with module command in stack_trace_filter
From: Steven Rostedt
Date: Wed Nov 20 2024 - 10:01:12 EST
On Wed, 20 Nov 2024 13:27:49 +0800
guoweikang <guoweikang.kernel@xxxxxxxxx> wrote:
> When executing the following command:
>
> # echo "write*:mod:ext3" > /sys/kernel/tracing/stack_trace_filter
>
> The current mod command causes a null pointer dereference. While commit
> 0f17976568b3f ("ftrace: Fix regression with module command in stack_trace_filter")
> has addressed part of the issue, it left a corner case unhandled, which still
> results in a kernel crash.
Ouch!
Thanks, I'll also mark this as stable.
-- Steve
>
> Signed-off-by: guoweikang <guoweikang.kernel@xxxxxxxxx>
> ---
> kernel/trace/ftrace.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
> index 71e53eaba8bc..9b17efb1a87d 100644
> --- a/kernel/trace/ftrace.c
> +++ b/kernel/trace/ftrace.c
> @@ -5093,6 +5093,9 @@ ftrace_mod_callback(struct trace_array *tr, struct ftrace_hash *hash,
> char *func;
> int ret;
>
> + if (!tr)
> + return -ENODEV;
> +
> /* match_records() modifies func, and we need the original */
> func = kstrdup(func_orig, GFP_KERNEL);
> if (!func)