Re: [PATCH] ftrace: Make ftrace_graph_ent depth field signed

From: Google
Date: Sun Jan 04 2026 - 21:22:32 EST


On Fri, 2 Jan 2026 14:31:48 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> From: Steven Rostedt <rostedt@xxxxxxxxxxx>
>
> The code has integrity checks to make sure that depth never goes below
> zero. But the depth field has recently been converted to unsigned long
> from "int" (for alignment reasons). As unsigned long can never be less
> than zero, the integrity checks no longer work.
>
> Convert depth to long from unsigned long to allow the integrity checks to
> work again.
>
> Cc: stable@xxxxxxxxxxxxxxx
> Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Closes: https://lore.kernel.org/all/aS6kGi0maWBl-MjZ@stanley.mountain/
> Fixes: f83ac7544fbf7 ("function_graph: Enable funcgraph-args and funcgraph-retaddr to work simultaneously")
> Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>

Looks good to me.

Acked-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>

Thanks,

> ---
> include/linux/ftrace.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
> index 770f0dc993cc..a3a8989e3268 100644
> --- a/include/linux/ftrace.h
> +++ b/include/linux/ftrace.h
> @@ -1167,7 +1167,7 @@ static inline void ftrace_init(void) { }
> */
> struct ftrace_graph_ent {
> unsigned long func; /* Current function */
> - unsigned long depth;
> + long depth; /* signed to check for less than zero */
> } __packed;
>
> /*
> --
> 2.51.0
>


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