[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180111184440.w3rmykkswnthvo2f@two.firstfloor.org>
Date: Thu, 11 Jan 2018 10:44:40 -0800
From: Andi Kleen <andi@...stfloor.org>
To: Andi Kleen <andi@...stfloor.org>
Cc: Andy Lutomirski <luto@...capital.net>,
Brian Gerst <brgerst@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
the arch/x86 maintainers <x86@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
David Woodhouse <dwmw@...zon.co.uk>,
Paul Turner <pjt@...gle.com>,
Andy Lutomirski <luto@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Tom Lendacky <thomas.lendacky@....com>,
Tim Chen <tim.c.chen@...ux.intel.com>,
Greg Kroah-Hartman <gregkh@...ux-foundation.org>,
Dave Hansen <dave.hansen@...el.com>,
Jiri Kosina <jikos@...nel.org>, Andi Kleen <ak@...ux.intel.com>
Subject: Re: [PATCH v1 1/8] x86/entry/clearregs: Remove partial stack frame
in fast system call
> Well it's kernel hardening to guard against possible future speculation
> attacks. Linus discussed it here for example:
>
> https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1580667.html
>
> For the on/off switch I can add a CONFIG to enable it, even though
> it seems somewhat silly.
I did some micro benchmarking now, sampling different real system
calls.
For the entry code (entry to call) I get on average 62 cycles
for the old code, vs 78 cycles with clear regs and full
stack frame saving on Skylake.
So it's roughly ~20 cycles difference, if we include the restore.
I would conclude 20 cycles are not significant for a syscall,
so there's not a lot of motivation to add a switch
for less security.
-Andi
Powered by blists - more mailing lists