Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752827AbeAJS3D (ORCPT + 1 other); Wed, 10 Jan 2018 13:29:03 -0500 Received: from bombadil.infradead.org ([65.50.211.133]:45310 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752496AbeAJS3C (ORCPT ); Wed, 10 Jan 2018 13:29:02 -0500 Date: Wed, 10 Jan 2018 19:28:56 +0100 From: Peter Zijlstra To: Tim Chen Cc: Thomas Gleixner , Andy Lutomirski , Linus Torvalds , Greg KH , Dave Hansen , Andrea Arcangeli , Andi Kleen , Arjan Van De Ven , David Woodhouse , Dan Williams , Paolo Bonzini , Ashok Raj , linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 3/5] x86/enter: Use IBRS on syscall and interrupts Message-ID: <20180110182856.GQ6176@hirez.programming.kicks-ass.net> References: <20180110100457.GA29822@worktop.programming.kicks-ass.net> <26d015ef-c5d4-b529-5c81-97115ec02f48@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <26d015ef-c5d4-b529-5c81-97115ec02f48@linux.intel.com> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On Wed, Jan 10, 2018 at 10:16:20AM -0800, Tim Chen wrote: > On 01/10/2018 02:04 AM, Peter Zijlstra wrote: > > What this Changelog fails to address is _WHY_ we need this. What does > > this provide that retpoline does not. > > > > Ok. I mentioned that in the cover letter that IBRS is a maximum security > mode in the CPU itself to directly restrict all indirect branches to prevent SPECTRE v2. > > I'll also include such comments in the commit log here. That still doesn't say anything useful. Why and where is it better than retpoline? Why would I ever want to use IBRS? Those are not questions that have clear answers here. >From what I can gather of the discussion earlier today is that pre SKL IBRS is no better than retpoline and a whole lot slower. On SKL+ retpoline is mostly there, but has a few dinky holes in and it _might_ make sense to use IBRS. But I feel it needs explaining what the exact holes are (pjt and dwmw2 had a fair enumeration IIRC) such that people can judge the risk. No wishy washy maybe nonsense, clear language.