Re: [PATCH] tracing/probes: Add const to new_argv allocation type

From: Google

Date: Thu Sep 17 2026 - 21:19:15 EST


On Thu, 17 Sep 2026 14:10:23 -0700
Kees Cook <kees@xxxxxxxxxx> wrote:

> From: Kees Cook <kees+treewide@xxxxxxxxxx>
>
> In preparation for converting the kmalloc family of allocators to the
> type-aware kmalloc_obj family, we need to make sure that the returned
> type from the allocation matches the type of the variable being
> assigned. (The kmalloc family returns "void *", which can be implicitly
> cast to any pointer type.)
>
> The assigned type is "const char **", but the converted allocation type
> would be "char **", which is the same type without the const qualifier.
> As there is no general way to safely add const qualifiers, take the size
> from the assignment target instead. No change in allocation size
> results.

This looks good to me. Let me pick it for-next.

Thanks!

>
> Build tested ARCH=x86_64 allmodconfig with GCC 16.2.0:
> kernel/trace/trace_probe.o
>
> Assisted-by: LLM coccinelle
> Signed-off-by: Kees Cook <kees+treewide@xxxxxxxxxx>
> ---
> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
> Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> Cc: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
> Cc: <linux-trace-kernel@xxxxxxxxxxxxxxx>
> ---
> kernel/trace/trace_probe.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/trace/trace_probe.c b/kernel/trace/trace_probe.c
> index 804442b2f7d2..cfb710095f65 100644
> --- a/kernel/trace/trace_probe.c
> +++ b/kernel/trace/trace_probe.c
> @@ -2316,7 +2316,7 @@ const char **traceprobe_expand_meta_args(int argc, const char *argv[],
> else
> *new_argc = argc;
>
> - new_argv = kcalloc(*new_argc, sizeof(char *), GFP_KERNEL);
> + new_argv = kcalloc(*new_argc, sizeof(*new_argv), GFP_KERNEL);
> if (!new_argv)
> return ERR_PTR(-ENOMEM);
>
> --
> 2.34.1
>


--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>