Received: by 2002:ac0:a679:0:0:0:0:0 with SMTP id p54csp1610742imp; Fri, 22 Feb 2019 07:08:40 -0800 (PST) X-Google-Smtp-Source: AHgI3IbUCaHnQIKn9pXBIQdRjdZkHKqVcaGFyE29QbeqdC7gqCWrnS3dD9NzdjBLdKzsG8EJc696 X-Received: by 2002:a65:490e:: with SMTP id p14mr4353623pgs.373.1550848120076; Fri, 22 Feb 2019 07:08:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550848120; cv=none; d=google.com; s=arc-20160816; b=I8jCVoU4KYE/xrJwdjT49L3OCUP3VDabRlMBVGYDhOKiFytmf9QNKjEdpYHcTl3jow R/4UyLGVAcFeBfvo2zqUnmkiVqrdaLegvnP52AfheFUvLqUKld5Lxnc+PTjfTpTuV4DE 8FuTBdUfI3DoFbHs0/gTkgIRxkvyE3XMLEpYqPcQ0+G0wP7qyKxtYXIHVwhEIZnykiYt i+qhuiKSFAm0RaF/lICQFtq4Q5I6HptPgcqSjFGpZ7vyzk1BqTi7kbZjkktaCIN46iSL A7TcxdfvTs0Ph36gOebIu5rlbksZgYRIkeP5tMF6xMSIVBL79G4eLi4G1mqV8zkBvcdp UHNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:to:references:in-reply-to:message-id:date :subject:cc:from:dkim-signature; bh=YM3seOtHGatq4lqSEDt4Wr16opyBlW43DUEP6U3tUmw=; b=fhP1Mp7fdFhue5ZpP9+RLqKajbnHW9bklf5P27P+JpZzSYCJO7dmp2ptoy7MnCH7Uj qzbmYSGt/lXno+Gj1LuRcDfisWNixIoN2HPGQNlbjk48GoYVpSMM1zxh1KRYkggSwbyR wGFwSdciFCm0IJxxjCQcGzg+YaUDMp50c/lWGrban73zLRayNJrQuBB87qfnovD7zy3c 5CoWgHRR5LEbd8NrxAx90xrziy7qe4+O9mayfIm9/1HwVlGSOxBrbKtO7wgd2jJrVmxG /Yj+Sj/dawtWM/BM1KMvScHJadE+kZ0/kNB6eVnjn+kIBHlY6IfsEOot+6oksmqSL4Vx 86PQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=ESb80kNi; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q207si1137773pgq.321.2019.02.22.07.08.24; Fri, 22 Feb 2019 07:08:40 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=ESb80kNi; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727446AbfBVPHg (ORCPT + 99 others); Fri, 22 Feb 2019 10:07:36 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:37415 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727238AbfBVPHf (ORCPT ); Fri, 22 Feb 2019 10:07:35 -0500 Received: by mail-pg1-f196.google.com with SMTP id q206so1261762pgq.4; Fri, 22 Feb 2019 07:07:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=YM3seOtHGatq4lqSEDt4Wr16opyBlW43DUEP6U3tUmw=; b=ESb80kNiQ9yog25hPeo9L5hKj8CkvoWsClwvZnFApBr+huWEHDWQTXqNuizJjyoiLZ CiXdav6OWZyQC9tqLSnqze0GiMae/oOAqV9Ud+Bd0ydew6/OsD/5XGOh4zoWPCGpyzum RvRhzwTNo7shXmgxFxA0oErxpGAnGACXRAIV2H/5+tE9/MOPelqqfgFQgoPkHrPGJcva OFNYA0CbwxPF4AS95pELF6Np+sXag6o6tqlsTWOYsfVykohWQxclNwxjcwzsbz78YRtX ArQsaIhAhxE+H3rU76V/GO1lQSdXD6+ZWGqrTKkUG1aU8t+bF50qLOCpSMN2Xyqn7kh1 JrbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=YM3seOtHGatq4lqSEDt4Wr16opyBlW43DUEP6U3tUmw=; b=PAqQjnLQc1VwXDxXXONuyW5VOZMpu/TcGnrjoMcVLTob94tCpLkKd9UQI29Kzj9tct 6ml61tAIopscMKD1LwI/h+9+q+XoypcVNfiAeLvHWFhnUVnRU4NENilQs/Zj+WmeUdhE EWIdyhW8brFqptmyZ6U44+HaFayC2rHJ4dTyfTlWsRFi/5t8wUop4rWy+EqIBdLKJnor U2beh6K8QSeROi5nkLaAsNcx4OKCAk/3WuW3NQhmMlTUmMsB98kaNjoBprxa1DbPKxPD Y/gaql5M5ZD3EozHN/X1y/AwLJSsj/KQ2o9fbVDP55lOq30BRqM7Uyij0jJH98ps7fDe hYJg== X-Gm-Message-State: AHQUAuZx1JpN9g1x2yiaTtZykbjNlfl7IyzNQA6GZqemBIPCrrU/abLJ mpR4aS68siYOH/yj4WXUSWc= X-Received: by 2002:a62:48c1:: with SMTP id q62mr4660304pfi.113.1550848054699; Fri, 22 Feb 2019 07:07:34 -0800 (PST) Received: from localhost.corp.microsoft.com ([167.220.255.67]) by smtp.googlemail.com with ESMTPSA id a4sm6151780pga.52.2019.02.22.07.07.27 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 22 Feb 2019 07:07:33 -0800 (PST) From: lantianyu1986@gmail.com X-Google-Original-From: Tianyu.Lan@microsoft.com Cc: Lan Tianyu , christoffer.dall@arm.com, marc.zyngier@arm.com, linux@armlinux.org.uk, catalin.marinas@arm.com, will.deacon@arm.com, jhogan@kernel.org, ralf@linux-mips.org, paul.burton@mips.com, paulus@ozlabs.org, benh@kernel.crashing.org, mpe@ellerman.id.au, pbonzini@redhat.com, rkrcmar@redhat.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, hpa@zytor.com, x86@kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org, kvm-ppc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, kvm@vger.kernel.org, michael.h.kelley@microsoft.com, kys@microsoft.com, vkuznets@redhat.com Subject: [PATCH V3 5/10] KVM/MMU: Flush tlb directly in the kvm_mmu_slot_gfn_write_protect() Date: Fri, 22 Feb 2019 23:06:32 +0800 Message-Id: <20190222150637.2337-6-Tianyu.Lan@microsoft.com> X-Mailer: git-send-email 2.14.4 In-Reply-To: <20190222150637.2337-1-Tianyu.Lan@microsoft.com> References: <20190222150637.2337-1-Tianyu.Lan@microsoft.com> To: unlisted-recipients:; (no To-header on input) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Lan Tianyu This patch is to flush tlb directly in the kvm_mmu_slot_gfn_write_protect() when range flush is available. Signed-off-by: Lan Tianyu --- arch/x86/kvm/mmu.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index 7a862c56b954..60b1771e400e 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c @@ -1729,6 +1729,11 @@ bool kvm_mmu_slot_gfn_write_protect(struct kvm *kvm, write_protected |= __rmap_write_protect(kvm, rmap_head, true); } + if (write_protected && kvm_available_flush_tlb_with_range()) { + kvm_flush_remote_tlbs_with_address(kvm, gfn, 1); + write_protected = false; + } + return write_protected; } -- 2.14.4