Received: by 10.223.176.46 with SMTP id f43csp2412064wra; Thu, 25 Jan 2018 09:25:39 -0800 (PST) X-Google-Smtp-Source: AH8x22466YYxNnUMepAcrWqtEZ448WFbW0JUUchnJSGqZhj8GE8MAIhyrGXrhCCRmaxcBxSaa2jV X-Received: by 10.99.138.75 with SMTP id y72mr13560280pgd.90.1516901138949; Thu, 25 Jan 2018 09:25:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516901138; cv=none; d=google.com; s=arc-20160816; b=Asd+IzYCMl+MmQp3aQ2IiJnpL52/kbNpAdCFkzuxAfNzvbRYKGHZae0++GiO0s9UWb iG+qLRmiv5d9GQKqf75JWB9Ab8aDt8wLUpY8Ue1iIZK8iaRcmQz9g12cp+yKYvTIYkIR mMLKM6tH89ylOtEcdk/SHj331F7DkDB/4PvgYlMyT5L3rpiI5tN1neSisK/yEbDpbFLk 5Zz3L60t6ZxoSBKcvz8H+wY9VtP54wYBU/yzid0z/aRV8gRv+c4DibkQSFZQzaIvCVN6 9HMlVnrzw837TtQ0cQXXnCBG59QU+5E4IyAHg3zUVqpVFw92PZe9OI0Cd8McsAT7tFhX giZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=toCA6AXWHHRn+350rcPSRHwcFd52bRCB3Hn4t6sHyJ4=; b=t3JgFLWunWkjRPBEXZSegHrh/RHCobsGucNB0BDLDOB1snitYamKW+KSelurpopuJc ei+EztaxQBtbJIe1NqgaB0wZ/6x40Uy51gvwKbr9i8HustvonMfxDFsI/4X7cSDflHvm QcNSoxjGis42RiVnmL/OaL16lbhd6Lptr5h60eEgIZWABHKsO80M4ciUFTzpfcibx4VE orn8fpVihG/HG2g5oqKUPKJOccS/Exmtu6nx7YJvmtpHIPEV9i43hNhrqDZCetyOIJXO 91naoTEVBCZ+Rh0uX7DRKvqEP9FI2f123rBsYZUPrY/e/Z+3tSNSB8Mp3pbBS4ZxCnmd K20Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b1-v6si2265939pld.281.2018.01.25.09.25.24; Thu, 25 Jan 2018 09:25:38 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751213AbeAYRY5 (ORCPT + 99 others); Thu, 25 Jan 2018 12:24:57 -0500 Received: from mga04.intel.com ([192.55.52.120]:6278 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751082AbeAYRY4 (ORCPT ); Thu, 25 Jan 2018 12:24:56 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Jan 2018 09:24:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,412,1511856000"; d="scan'208";a="29460057" Received: from avandeve-mobl.amr.corp.intel.com (HELO [10.24.10.58]) ([10.24.10.58]) by orsmga002.jf.intel.com with ESMTP; 25 Jan 2018 09:24:53 -0800 Subject: Re: [RFC PATCH 1/2] x86/ibpb: Skip IBPB when we switch back to same user process To: Peter Zijlstra Cc: Tim Chen , linux-kernel@vger.kernel.org, KarimAllah Ahmed , Andi Kleen , Andrea Arcangeli , Andy Lutomirski , Ashok Raj , Asit Mallick , Borislav Petkov , Dan Williams , Dave Hansen , David Woodhouse , Greg Kroah-Hartman , "H . Peter Anvin" , Ingo Molnar , Janakarajan Natarajan , Joerg Roedel , Jun Nakajima , Laura Abbott , Linus Torvalds , Masami Hiramatsu , Paolo Bonzini , rkrcmar@redhat.com, Thomas Gleixner , Tom Lendacky , x86@kernel.org References: <20180125085820.GV2228@hirez.programming.kicks-ass.net> <20180125092233.GE2295@hirez.programming.kicks-ass.net> <86541aca-8de7-163d-b620-083dddf29184@linux.intel.com> <20180125135055.GK2249@hirez.programming.kicks-ass.net> <20180125164139.GM2269@hirez.programming.kicks-ass.net> From: Arjan van de Ven Message-ID: <565574d1-c0a6-684d-a387-12f2cdaf01de@linux.intel.com> Date: Thu, 25 Jan 2018 09:24:53 -0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <20180125164139.GM2269@hirez.programming.kicks-ass.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > The idea is simple, do what we do for virt. Don't send IPI's to CPUs > that don't need them (in virt's case because the vCPU isn't running, in > our case because we're not in fact running a user process), but mark the > CPU as having needed a TLB flush. I am really uncomfortable with that idea. You really can't run code safely on a cpu where the TLBs in the CPU are invalid or where a CPU that does (partial) page walks would install invalid PTEs either through actual or through speculative execution. (in the virt case there's a cheat, since the code is not actually running there isn't a cpu with TLBs live. You can't do that same cheat for this case)