Re: [PATCH] tracing: branch: Fix inverted check on stat tracer registration
From: Google
Date: Mon Apr 20 2026 - 19:57:35 EST
On Mon, 20 Apr 2026 06:25:09 -0700
Breno Leitao <leitao@xxxxxxxxxx> wrote:
> init_annotated_branch_stats() and all_annotated_branch_stats() check the
> return value of register_stat_tracer() with "if (!ret)", but
> register_stat_tracer() returns 0 on success and a negative errno on
> failure. The inverted check causes the warning to be printed on every
> successful registration, e.g.:
>
> Warning: could not register annotated branches stats
>
> while leaving real failures silent. The initcall also returned a
> hard-coded 1 instead of the actual error.
>
> Invert the check and propagate ret so that the warning fires on real
> errors and the initcall reports the correct status.
>
Good catch!
Acked-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>
Thanks,
> Fixes: 002bb86d8d42 ("tracing/ftrace: separate events tracing and stats tracing engine")
> Signed-off-by: Breno Leitao <leitao@xxxxxxxxxx>
> ---
> kernel/trace/trace_branch.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/kernel/trace/trace_branch.c b/kernel/trace/trace_branch.c
> index 6809b370e991d..d1564db95a8f5 100644
> --- a/kernel/trace/trace_branch.c
> +++ b/kernel/trace/trace_branch.c
> @@ -373,10 +373,10 @@ __init static int init_annotated_branch_stats(void)
> int ret;
>
> ret = register_stat_tracer(&annotated_branch_stats);
> - if (!ret) {
> + if (ret) {
> printk(KERN_WARNING "Warning: could not register "
> "annotated branches stats\n");
> - return 1;
> + return ret;
> }
> return 0;
> }
> @@ -438,10 +438,10 @@ __init static int all_annotated_branch_stats(void)
> int ret;
>
> ret = register_stat_tracer(&all_branch_stats);
> - if (!ret) {
> + if (ret) {
> printk(KERN_WARNING "Warning: could not register "
> "all branches stats\n");
> - return 1;
> + return ret;
> }
> return 0;
> }
>
> ---
> base-commit: c7275b05bc428c7373d97aa2da02d3a7fa6b9f66
> change-id: 20260420-tracing-3f1367ee4b93
>
> Best regards,
> --
> Breno Leitao <leitao@xxxxxxxxxx>
>
--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>