From: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
To: Peter Zijlstra <peterz@infradead.org>,
herbert@gondor.apana.org.au, linux-kernel@vger.kernel.org,
Josh Poimboeuf <jpoimboe@redhat.com>
Cc: x86@kernel.org
Subject: Re: [RFC] crypto/sm4: Fix objtool/libelf warning
Date: Thu, 14 Oct 2021 18:29:55 +0800 [thread overview]
Message-ID: <8e35ba6d-f876-4726-a8e7-a0d80b0186f2@linux.alibaba.com> (raw)
In-Reply-To: <20211007202204.GT174703@worktop.programming.kicks-ass.net>
Hi Peter,
On 10/8/21 4:22 AM, Peter Zijlstra wrote:
> Hi,
>
> objtool is yielding the obscure libelf warning:
>
> vmlinux.o: warning: objtool: elf_update: invalid section entry size
>
> Which I tracked down to section:
>
> [3023] .rodata.cst164 PROGBITS 0000000000000000 1ab501e0 000154 a4 AM 0 0 16
>
> Which has a section size of 0x154 (340) and an entry size of 0xa4 (164).
> An obvious mis-match.
>
> From there, git-grep quickly yields:
>
> arch/x86/crypto/sm4-aesni-avx-asm_64.S:.section .rodata.cst164, "aM", @progbits, 164
> arch/x86/crypto/sm4-aesni-avx2-asm_64.S:.section .rodata.cst164, "aM", @progbits, 164
>
> So those files create this .rodata section with an explicit entry size,
> but then don't respect it themselves. Removing the entry size makes the
> warning go away, but I can't tell if that's right or not, given there is
> zero clue as to why that entry size was specified to begin with.
>
> Please explain...
>
> ---
> diff --git a/arch/x86/crypto/sm4-aesni-avx-asm_64.S b/arch/x86/crypto/sm4-aesni-avx-asm_64.S
> index 18d2f5199194..d089cccf4db7 100644
> --- a/arch/x86/crypto/sm4-aesni-avx-asm_64.S
> +++ b/arch/x86/crypto/sm4-aesni-avx-asm_64.S
> @@ -78,7 +78,7 @@
> vpxor tmp0, x, x;
>
>
> -.section .rodata.cst164, "aM", @progbits, 164
> +.section .rodata.cst164, "aM", @progbits
> .align 16
>
> /*
> diff --git a/arch/x86/crypto/sm4-aesni-avx2-asm_64.S b/arch/x86/crypto/sm4-aesni-avx2-asm_64.S
> index d2ffd7f76ee2..a0f7541c2246 100644
> --- a/arch/x86/crypto/sm4-aesni-avx2-asm_64.S
> +++ b/arch/x86/crypto/sm4-aesni-avx2-asm_64.S
> @@ -93,7 +93,7 @@
> vpxor tmp0, x, x;
>
>
> -.section .rodata.cst164, "aM", @progbits, 164
> +.section .rodata.cst164, "aM", @progbits
> .align 16
>
> /*
>
Thanks for pointing it out, We have also reproduced this error. If the M
flag is specified, the entry_size argument is required. We also need to
consider the clang compiler. This requires a more thorough method to fix
it. I will post another patch later.
Best regards,
Tianjia
next prev parent reply other threads:[~2021-10-14 10:30 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-07 20:22 Peter Zijlstra
2021-10-14 10:29 ` Tianjia Zhang [this message]
2021-10-14 14:56 ` Peter Zijlstra
2021-10-15 3:12 ` Tianjia Zhang
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=8e35ba6d-f876-4726-a8e7-a0d80b0186f2@linux.alibaba.com \
--to=tianjia.zhang@linux.alibaba.com \
--cc=herbert@gondor.apana.org.au \
--cc=jpoimboe@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®