Re: [PATCH 02/48] objtool/klp: Fix .data..once static local non-correlation

Song Liu
2026-04-23T18:54:51Z

On Wed, Apr 22, 2026 at 9:04 PM Josh Poimboeuf <jpoimboe@kernel.org> wrote:
>
> While there was once a section named .data.once, it has since been
> renamed to .data..once with commit dbefa1f31a91 ("Rename .data.once to
> .data..once to fix resetting WARN*_ONCE"). Fix it.
>
> Fixes: dd590d4d57eb ("objtool/klp: Introduce klp diff subcommand for diffing object files")
> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>

Acked-by: Song Liu <song@kernel.org>

Nitpick: shall we match both ".data.once" and ".data..once", so that whoever
backports klp-build to older kernels will not have a surprise.

> ---
> tools/objtool/klp-diff.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/objtool/klp-diff.c b/tools/objtool/klp-diff.c
> index b1b068e9b4c7..cb26c1c92a74 100644
> --- a/tools/objtool/klp-diff.c
> +++ b/tools/objtool/klp-diff.c
> @@ -257,7 +257,8 @@ static bool is_uncorrelated_static_local(struct symbol *sym)
> if (!is_object_sym(sym) || !is_local_sym(sym))
> return false;
>
> - if (!strcmp(sym->sec->name, ".data.once"))
> + /* WARN_ONCE, etc */
> + if (!strcmp(sym->sec->name, ".data..once"))
> return true;
>
> dot = strchr(sym->name, '.');
> --
> 2.53.0
>
>