From: Ingo Molnar <mingo@kernel.org>
To: Eric Biggers <ebiggers@kernel.org>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org,
linux-crypto@vger.kernel.org, Ard Biesheuvel <ardb@kernel.org>,
Stephen Rothwell <sfr@canb.auug.org.au>,
Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH] x86/crc: add ANNOTATE_NOENDBR to suppress objtool warnings
Date: Tue, 18 Feb 2025 09:43:15 +0100 [thread overview]
Message-ID: <Z7RII_fnk1d2nB3r@gmail.com> (raw)
In-Reply-To: <20250217193230.100443-1-ebiggers@kernel.org>
* Eric Biggers <ebiggers@kernel.org> wrote:
> From: Eric Biggers <ebiggers@google.com>
>
> The assembly functions generated by crc-pclmul-template.S are called
> only via static_call, so they do not need to begin with an endbr
> instruction. But objtool still warns about a missing endbr by default.
> Add ANNOTATE_NOENDBR to suppress these warnings:
>
> vmlinux.o: warning: objtool: crc32_x86_init+0x1c0: relocation to !ENDBR: crc32_lsb_vpclmul_avx10_256+0x0
> vmlinux.o: warning: objtool: crc64_x86_init+0x183: relocation to !ENDBR: crc64_msb_vpclmul_avx10_256+0x0
> vmlinux.o: warning: objtool: crc_t10dif_x86_init+0x183: relocation to !ENDBR: crc16_msb_vpclmul_avx10_256+0x0
> vmlinux.o: warning: objtool: __SCK__crc32_lsb_pclmul+0x0: data relocation to !ENDBR: crc32_lsb_pclmul_sse+0x0
> vmlinux.o: warning: objtool: __SCK__crc64_lsb_pclmul+0x0: data relocation to !ENDBR: crc64_lsb_pclmul_sse+0x0
> vmlinux.o: warning: objtool: __SCK__crc64_msb_pclmul+0x0: data relocation to !ENDBR: crc64_msb_pclmul_sse+0x0
> vmlinux.o: warning: objtool: __SCK__crc16_msb_pclmul+0x0: data relocation to !ENDBR: crc16_msb_pclmul_sse+0x0
>
> Fixes: 8d2d3e72e35b ("x86/crc: add "template" for [V]PCLMULQDQ based CRC functions")
> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
> Closes: https://lore.kernel.org/r/20250217170555.3d14df62@canb.auug.org.au/
> Suggested-by: Peter Zijlstra <peterz@infradead.org>
> Signed-off-by: Eric Biggers <ebiggers@google.com>
> ---
>
> This applies to
> https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git/log/?h=crc-next
>
> arch/x86/lib/crc-pclmul-template.S | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/arch/x86/lib/crc-pclmul-template.S b/arch/x86/lib/crc-pclmul-template.S
> index dc91cc074b300..a19b730b642d3 100644
> --- a/arch/x86/lib/crc-pclmul-template.S
> +++ b/arch/x86/lib/crc-pclmul-template.S
> @@ -5,10 +5,11 @@
> // Copyright 2025 Google LLC
> //
> // Author: Eric Biggers <ebiggers@google.com>
>
> #include <linux/linkage.h>
> +#include <linux/objtool.h>
>
> // Offsets within the generated constants table
> .set OFFSETOF_BSWAP_MASK, -5*16 // msb-first CRCs only
> .set OFFSETOF_FOLD_ACROSS_2048_BITS_CONSTS, -4*16 // must precede next
> .set OFFSETOF_FOLD_ACROSS_1024_BITS_CONSTS, -3*16 // must precede next
> @@ -270,10 +271,14 @@
> .set BSWAP_MASK_XMM, %xmm6
> .set CONSTS, V7
> .set CONSTS_YMM, %ymm7
> .set CONSTS_XMM, %xmm7
>
> + // Use ANNOTATE_NOENDBR to suppress an objtool warning, since the
> + // functions generated by this macro are called only by static_call.
> + ANNOTATE_NOENDBR
Acked-by: Ingo Molnar <mingo@kernel.org>
Thanks,
Ingo
prev parent reply other threads:[~2025-02-18 8:43 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-17 19:32 [PATCH] x86/crc: add ANNOTATE_NOENDBR to suppress objtool warnings Eric Biggers
2025-02-18 8:43 ` Ingo Molnar [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z7RII_fnk1d2nB3r@gmail.com \
--to=mingo@kernel.org \
--cc=ardb@kernel.org \
--cc=ebiggers@kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=sfr@canb.auug.org.au \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.