Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp1674663pxk; Tue, 1 Sep 2020 05:07:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJydlDKHsZ306cFp2ZMiZlw4SAzHUMuL3ATOt3aJKYG1GuMZtldS8VBLrGMQ2fUh5uW4ES2Q X-Received: by 2002:a17:906:d182:: with SMTP id c2mr1152771ejz.378.1598962062113; Tue, 01 Sep 2020 05:07:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598962062; cv=none; d=google.com; s=arc-20160816; b=pBIYpyv0kEMVftZR1d79ypFNkStPzSTkABqA/3HNvBHpO6/A3PAw/zYOjW69MqyauI P9fiMHE58teqOjc4cPxuXYSD6Rl25YR+7dWEvVu2NdYJWvockKA6/1B1ofcYevkgC5dw qjfyKMXWIt4yJjelqKC+3L66XUavRMNLf7h6emb7vQ1W0ErtjQdWaJ01C7J3WFeUurOh VNpxXVEI8/u1OOi1DMt6eVkCcvJw9lutsjIGkMoOU/Q6SNaChc4wbGWzv7uk3+dG3ANW DXs18zR26vGdwm+5D8jadT83Yss14cmwV7aUC4MkmxQmGiiVY9wCBD6PY6pSH3feNifl tcJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=deukqrTnR0cMzsDKDaqxmBI2QdBNNOMXdjj1IqkXDBo=; b=xuoclJ5fNAlPva1hjI99FNyAwSqYkKyzqq9ORt3swBZntW2IOckMX+OqHEmCRhQ7jy /sTPNWaSVb59qfm+ryLrVd6Mtk0KUe97lnDbCjLbGQ86OPucJ4NLZL894R+E1lKvqxtO 8ki/C2iTq0M48z6BzP1g66X7u9Mfa379CzrWYzqk1g9y0vKw4wMK7fo/4lq+LWSoH3+u fdf//NsqaSdrMG1Qon8xM97QcweXhekVURZSsoEv+VqRCaQw42Z7ghXF/D9cOceckvZ7 73gYL2x+EAe958tGPggKpJ1QGiBAuvcY3S8o7tb9DLqh8DOt1bwV3yFVqbTImZ4lO1yc EDsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=XGknnUl5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g11si264605edy.476.2020.09.01.05.07.18; Tue, 01 Sep 2020 05:07:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=XGknnUl5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728072AbgIAMGa (ORCPT + 99 others); Tue, 1 Sep 2020 08:06:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48988 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726419AbgIALxu (ORCPT ); Tue, 1 Sep 2020 07:53:50 -0400 Received: from mail-pl1-x644.google.com (mail-pl1-x644.google.com [IPv6:2607:f8b0:4864:20::644]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5F381C061244; Tue, 1 Sep 2020 04:53:50 -0700 (PDT) Received: by mail-pl1-x644.google.com with SMTP id y6so423060plt.3; Tue, 01 Sep 2020 04:53:50 -0700 (PDT) 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=deukqrTnR0cMzsDKDaqxmBI2QdBNNOMXdjj1IqkXDBo=; b=XGknnUl5Ax4ZlofOqiThlZt8dgwF/9fDJdmA9cH5irula3kLI7CPRZdtZKjoWcQvDn 6B04V4QhFIMLMKg+Mhd8b086sl9AYx3mAjclN+TgDMQ319a+bG4Y//xrZ/QFSp6FwN1g 0lO8uOwRIXqEUW1RzJNAIdBx8rj4eO8oOR4/GGJc1uusHoco4LjMvs4Lqe9ia/CEUqNX 1ZwV0v1yg34L7gtWDlMPlZf3muPjnnssrC/R5Z6knCMEzWj+6mrPtfrQVSwZofUoNI3X 6Nb51M0GQZmfzS89waYtM2Ee4I8ImR2PxPSgF1+3LvQlDDB2z2NYs2t7R/RzGLy1A5cz n0Sg== 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=deukqrTnR0cMzsDKDaqxmBI2QdBNNOMXdjj1IqkXDBo=; b=uRgLdV3zy/Pe9lAaLZkpssfjnQaDfv3lfwfWQ0yy+HjoiyaYh+PgGfUwxRHI7x2Lvd hfzaFFCoI0I6u0GZaWuKlKIWGPECPV2tdKF/4zTDBZdjyb1rZKr3KpjRlp1qSs93wCYK vpWbllGo/5Rwq7ohwe1V3KX+EvI7vCgCKSN+oiiIplYAhrmsw3IC8FEKNpYESOJtSyZY bdjqgNYjXVqkz36s1mK8dIwT9Ubh0w8vztLaANgVV91lvtdYUFmcEc/gzXw9Ri9DbFsd mxydgBoJOCU/H/ImIaVuXhKswoEUbA57I8GKse9TPEjrU/jo9BhsHG7fPiHKxMzJau6R ifFw== X-Gm-Message-State: AOAM533bQZGfWWR0JzSs6n+NyI3rYXCAdwTJz/T6wx2OvnTqvR2/dMQd CCRFFiTaPJ17x2mQIT2uIA4= X-Received: by 2002:a17:902:b111:: with SMTP id q17mr1066230plr.202.1598961229988; Tue, 01 Sep 2020 04:53:49 -0700 (PDT) Received: from localhost.localdomain ([203.205.141.53]) by smtp.gmail.com with ESMTPSA id fs24sm1365344pjb.8.2020.09.01.04.53.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Sep 2020 04:53:49 -0700 (PDT) From: yulei.kernel@gmail.com X-Google-Original-From: yuleixzhang@tencent.com To: pbonzini@redhat.com Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, sean.j.christopherson@intel.com, jmattson@google.com, junaids@google.com, bgardon@google.com, vkuznets@redhat.com, xiaoguangrong.eric@gmail.com, kernellwp@gmail.com, lihaiwei.kernel@gmail.com, Yulei Zhang Subject: [RFC V2 1/9] Introduce new fields in kvm_arch/vcpu_arch struct for direct build EPT support Date: Tue, 1 Sep 2020 19:54:43 +0800 Message-Id: X-Mailer: git-send-email 2.17.1 In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Yulei Zhang Add parameter global_root_hpa for saving direct build global EPT root point, and add per-vcpu flag direct_build_tdp to indicate using global EPT root point. Signed-off-by: Yulei Zhang --- arch/x86/include/asm/kvm_host.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 5ab3af7275d8..485b1239ad39 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -788,6 +788,9 @@ struct kvm_vcpu_arch { /* AMD MSRC001_0015 Hardware Configuration */ u64 msr_hwcr; + + /* vcpu use pre-constructed EPT */ + bool direct_build_tdp; }; struct kvm_lpage_info { @@ -963,6 +966,8 @@ struct kvm_arch { struct kvm_pmu_event_filter *pmu_event_filter; struct task_struct *nx_lpage_recovery_thread; + /* global root hpa for pre-constructed EPT */ + hpa_t global_root_hpa; }; struct kvm_vm_stat { -- 2.17.1