[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMzpN2ie64-TOJ5MJ+MFQ22GxXcjAgthJBV046OOPjvcMAseNw@mail.gmail.com>
Date: Wed, 19 Feb 2020 15:10:49 -0500
From: Brian Gerst <brgerst@...il.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: LKML <linux-kernel@...r.kernel.org>,
"the arch/x86 maintainers" <x86@...nel.org>
Subject: Re: [PATCH] x86/entry/32: Add missing ASM_CLAC in general_protection entry
On Wed, Feb 19, 2020 at 4:58 AM Thomas Gleixner <tglx@...utronix.de> wrote:
>
> All exception entry points must have ASM_CLAC right at the
> beginning. The general_protection entry is missing one.
>
> Fixes: e59d1b0a2419 ("x86-32, smap: Add STAC/CLAC instructions to 32-bit kernel entry")
> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
> Cc: stable@...r.kernel.org
> ---
> arch/x86/entry/entry_32.S | 1 +
> 1 file changed, 1 insertion(+)
>
> --- a/arch/x86/entry/entry_32.S
> +++ b/arch/x86/entry/entry_32.S
> @@ -1681,6 +1681,7 @@ SYM_CODE_START(int3)
> SYM_CODE_END(int3)
>
> SYM_CODE_START(general_protection)
> + ASM_CLAC
> pushl $do_general_protection
> jmp common_exception
> SYM_CODE_END(general_protection)
How about moving ASM_CLAC to common_exception instead? That would
save a few bytes (kernel text + alternatives), and the AC bit has no
effect on kernel stack pushes.
--
Brian Gerst
Powered by blists - more mailing lists