From patchwork Wed Mar 8 18:07:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 9611785 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 308C260414 for ; Wed, 8 Mar 2017 18:15:46 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2AB8727B13 for ; Wed, 8 Mar 2017 18:15:46 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1D5E62862A; Wed, 8 Mar 2017 18:15:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.3 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C396F27B13 for ; Wed, 8 Mar 2017 18:15:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753910AbdCHSPo (ORCPT ); Wed, 8 Mar 2017 13:15:44 -0500 Received: from mail-wm0-f67.google.com ([74.125.82.67]:36095 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751460AbdCHSPn (ORCPT ); Wed, 8 Mar 2017 13:15:43 -0500 Received: by mail-wm0-f67.google.com with SMTP id v190so7379413wme.3 for ; Wed, 08 Mar 2017 10:15:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=DNFS2J9fA5OhcWHrh043JUVhTkfHGdK4Uyih6ThWfAU=; b=VPTXD11C0U4JbaKuqHQjrhJGi+ETitKjtiXmEWfLoQ0CtFD+s6sJCUgGoo+i6LQTfp 7vEhgJzDvl4iBF4ttJzQuPhWgRXdVbVIPOZ1M8UNSsUIXRh74YolvIxna+rQHAGg7Mc9 EP5ZE61uHB3pAsN8uSiBPAGECTorma21f4lsbZZDv+x7WL9ICFD6RJcRMSjKRzC7o4ai CLVdDKn+bFvNwipIkpuAia4PYQXreVDV6iVC5QHmEIcPvL0uahokLW7fhjniIDbI5o0v Vd5rhli++ph6cMMd1r+D0RTTm8pmiNP9WKwrH9roBZ7t1A31rROp2Gm+toYhpKERSW5x 6nsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=DNFS2J9fA5OhcWHrh043JUVhTkfHGdK4Uyih6ThWfAU=; b=QCtaJuGuR15hkMMe8gKRjdPD2xK0h9IuLBBZKsASgcbY+MCSP+nkhusVrQfcLg4A9B pEA2F+Gcvoj7ulPzMPTpgLcpzz7L+BVQC8DAhmg/WiOYuIGrKtWbwTpmINeOBckYPd2f idOuk7KSKjGNimaEcL2BTp/WdZ39BPZflo1NQjp3wE0kXb4U8VxHd/zAHu4QunfB03IB oRFcWpLG436YwNl6kN1IOivqAxBSnGvos5SGSNbYUBdDFykhif3JgAUErypKkJ+o27Ty 0P3htu5m3xFd7eg66TvvQ8lIn1DHoWL3fd+qCNq1KKto6bwEkJsYghMQlWfVMPwaoJNa aK8A== X-Gm-Message-State: AMke39lnuowUCGc4MilznLtSSQcRbvyAWnJPkBlXy0eafkAYy8S0569KSFxQ2t8SBQXkzw== X-Received: by 10.28.35.66 with SMTP id j63mr7315514wmj.84.1488996447024; Wed, 08 Mar 2017 10:07:27 -0800 (PST) Received: from 640k.lan (94-36-220-234.adsl-ull.clienti.tiscali.it. [94.36.220.234]) by smtp.gmail.com with ESMTPSA id 82sm4539485wmg.0.2017.03.08.10.07.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 08 Mar 2017 10:07:26 -0800 (PST) From: Paolo Bonzini To: kvm@vger.kernel.org Cc: bdas@redhat.com, dmatlack@google.com Subject: [PATCH kvm-unit-tests 4/4] VMX: move execution control setup to setup_ept Date: Wed, 8 Mar 2017 19:07:20 +0100 Message-Id: <1488996440-6493-5-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1488996440-6493-1-git-send-email-pbonzini@redhat.com> References: <1488996440-6493-1-git-send-email-pbonzini@redhat.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Signed-off-by: Paolo Bonzini --- x86/vmx_tests.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/x86/vmx_tests.c b/x86/vmx_tests.c index a61c9f2..4b3fc0e 100644 --- a/x86/vmx_tests.c +++ b/x86/vmx_tests.c @@ -943,6 +943,7 @@ static int setup_ept(bool enable_ad) { int support_2m; unsigned long end_of_memory; + u32 ctrl_cpu[2]; if (!(ept_vpid.val & EPT_CAP_UC) && !(ept_vpid.val & EPT_CAP_WB)) { @@ -958,6 +959,14 @@ static int setup_ept(bool enable_ad) printf("\tPWL4 is not supported\n"); return 1; } + ctrl_cpu[0] = vmcs_read(CPU_EXEC_CTRL0); + ctrl_cpu[1] = vmcs_read(CPU_EXEC_CTRL1); + ctrl_cpu[0] = (ctrl_cpu[0] | CPU_SECONDARY) + & ctrl_cpu_rev[0].clr; + ctrl_cpu[1] = (ctrl_cpu[1] | CPU_EPT) + & ctrl_cpu_rev[1].clr; + vmcs_write(CPU_EXEC_CTRL0, ctrl_cpu[0]); + vmcs_write(CPU_EXEC_CTRL1, ctrl_cpu[1]); eptp |= (3 << EPTP_PG_WALK_LEN_SHIFT); pml4 = alloc_page(); memset(pml4, 0, PAGE_SIZE); @@ -982,22 +991,12 @@ static int apic_version; static int ept_init_common(bool have_ad) { - u32 ctrl_cpu[2]; - if (!(ctrl_cpu_rev[0].clr & CPU_SECONDARY) || !(ctrl_cpu_rev[1].clr & CPU_EPT)) { printf("\tEPT is not supported"); return VMX_TEST_EXIT; } - ctrl_cpu[0] = vmcs_read(CPU_EXEC_CTRL0); - ctrl_cpu[1] = vmcs_read(CPU_EXEC_CTRL1); - ctrl_cpu[0] = (ctrl_cpu[0] | CPU_SECONDARY) - & ctrl_cpu_rev[0].clr; - ctrl_cpu[1] = (ctrl_cpu[1] | CPU_EPT) - & ctrl_cpu_rev[1].clr; - vmcs_write(CPU_EXEC_CTRL0, ctrl_cpu[0]); - vmcs_write(CPU_EXEC_CTRL1, ctrl_cpu[1]); if (setup_ept(have_ad)) return VMX_TEST_EXIT; data_page1 = alloc_page();