[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240802093552.GG39708@noisy.programming.kicks-ass.net>
Date: Fri, 2 Aug 2024 11:35:52 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Cc: x86@...nel.org, linux-kernel@...r.kernel.org,
Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Ingo Molnar <mingo@...hat.com>,
Josh Poimboeuf <jpoimboe@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [FYI] objtool: .export_symbol…:
data relocation to !ENDBR: stpcpy
On Thu, Aug 01, 2024 at 05:28:36PM +0200, Sebastian Andrzej Siewior wrote:
> Hi,
>
> defconfig on x86-64 with gcc-14 I get this:
> | vmlinux.o: warning: objtool: .export_symbol+0x26980: data relocation to !ENDBR: stpcpy+0x0
>
> objdump ->
>
> | 0000000000000110 <stpcpy>:
> | 110: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1)
> | 117: 00 00 00 00
> | 11b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
> | 120: f3 0f 1e fa endbr64
>
> okay, no endbr64 on entry label.
>
> | $ make lib/string.s
> ->
> | .type stpcpy, @function
> | stpcpy:
> | .p2align 5
> | endbr64
> | .L30:
> | # lib/string.c:193: while ((*dest++ = *src++) != '\0')
> | movzbl (%rsi), %eax # MEM[(const char *)src_8 + -1B], _1
>
> an alignment request after the function label before endbr64 which gets
> expanded into NOP_11+NOP_5.
> I don't see this with gcc-13.
> Reported as https://gcc.gnu.org/PR116174
Fun, thanks for tracking that down!
Powered by blists - more mailing lists