[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMzpN2g8eenLASqXA36LwP=Zr+8Z1cO7Cpz0ijiUdOr_+7G-3A@mail.gmail.com>
Date: Fri, 6 Dec 2024 09:09:55 -0500
From: Brian Gerst <brgerst@...il.com>
To: Oleg Nesterov <oleg@...hat.com>
Cc: linux-kernel@...r.kernel.org, x86@...nel.org,
Ingo Molnar <mingo@...nel.org>, "H . Peter Anvin" <hpa@...or.com>, Thomas Gleixner <tglx@...utronix.de>,
Borislav Petkov <bp@...en8.de>, Ard Biesheuvel <ardb@...nel.org>, Uros Bizjak <ubizjak@...il.com>,
stable@...r.kernel.org, Fangrui Song <i@...kray.me>,
Nathan Chancellor <nathan@...nel.org>, Andy Lutomirski <luto@...nel.org>
Subject: Re: [PATCH v5 01/16] x86/stackprotector: Work around strict Clang TLS
symbol requirements
On Fri, Dec 6, 2024 at 6:52 AM Oleg Nesterov <oleg@...hat.com> wrote:
>
> On 11/05, Brian Gerst wrote:
> >
> > --- a/arch/x86/kernel/vmlinux.lds.S
> > +++ b/arch/x86/kernel/vmlinux.lds.S
> > @@ -468,6 +468,9 @@ SECTIONS
> > . = ASSERT((_end - LOAD_OFFSET <= KERNEL_IMAGE_SIZE),
> > "kernel image bigger than KERNEL_IMAGE_SIZE");
> >
> > +/* needed for Clang - see arch/x86/entry/entry.S */
> > +PROVIDE(__ref_stack_chk_guard = __stack_chk_guard);
>
> Don't we need the simple fix below?
>
> without this patch I can't build the kernel with CONFIG_STACKPROTECTOR=n.
>
> Oleg.
>
> diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
> index fab3ac9a4574..2ff48645bab9 100644
> --- a/arch/x86/kernel/vmlinux.lds.S
> +++ b/arch/x86/kernel/vmlinux.lds.S
> @@ -472,8 +472,10 @@ SECTIONS
> . = ASSERT((_end - LOAD_OFFSET <= KERNEL_IMAGE_SIZE),
> "kernel image bigger than KERNEL_IMAGE_SIZE");
>
> +#ifdef CONFIG_STACKPROTECTOR
> /* needed for Clang - see arch/x86/entry/entry.S */
> PROVIDE(__ref_stack_chk_guard = __stack_chk_guard);
> +#endif
>
> #ifdef CONFIG_X86_64
> /*
Which compiler are you using? It builds fine with GCC 14 and clang 18.
Brian Gerst
Powered by blists - more mailing lists