From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x224C6KdUjU53IQS0KEc2e0RYcg14vr74/xKSfGKV1qajqkLKvv3s/RFBe1wYPvhsAoZoqtN3 ARC-Seal: i=1; a=rsa-sha256; t=1516901094; cv=none; d=google.com; s=arc-20160816; b=NaGcGOTw0OTdHuyjT4yZpL71DOb9zFC9f9G/ZVAvCl8tBS44ssmNGqzFSA1CmYwgiB HRGE2cHD4plkDFYn+nvDlJjJIT/5AJTH2ie+4EpYc5ZJIrjWS3z2dbm0WcjMmM/wuOiH UYIsJwiURDyfA6xCnZSvTYw3hWWy0UdDbhqu3yyKhHIvY8cuecU36gaug7b1GIN7mXB8 Qj8bcfA9W5AoJ+l/rjOCU5Au68iPKGkjOZuvCEMyiMAYDRKM9Kc+Ad1GqUP7C7N7IgFw BL3r2S+ZJ/6lskeP8SB93gXI8NAYljJPqV//pnWYmjpcMBVSwuoXXuCb/ptucwKiCfcb z5IA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=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=mt7ay9iZ3ElMFbmBPKPgobu31feR3+2bOkDLrzxGRO3fWmoSb3XrQk3prC568qS6oC dmkcQfWlFAIlGlibCLJOpwsOjJapaWbrkTcipHVnPMKBbUFWb8FyIWrZK5zRCq+P462a OzoIponxTdF07p8V0mnwYT+bke8s67+jp7oXs/AS3N1K8YsB/mVUQPROg9/Zd2+vXSfU hF6wCqMqhBp5tDrJAUZmAMY5EP9WKKdxjaopFackzYhdsCI/X0J/aESM/U4taCV/eunA a+94Y+4qCP/tdgFoLz0CMKtp3Wf5X/2z3GAEIvT78vCkVd2751Hx6sciD6BzuWxFQeu2 ocww== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of arjan@linux.intel.com designates 192.55.52.93 as permitted sender) smtp.mailfrom=arjan@linux.intel.com Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of arjan@linux.intel.com designates 192.55.52.93 as permitted sender) smtp.mailfrom=arjan@linux.intel.com X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,412,1511856000"; d="scan'208";a="29460057" 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 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1590523944221221739?= X-GMAIL-MSGID: =?utf-8?q?1590586082130709268?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: > 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)