From patchwork Fri Nov 9 22:20:42 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jim Mattson X-Patchwork-Id: 10676649 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 860AE13AD for ; Fri, 9 Nov 2018 22:20:54 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 77B782F2C7 for ; Fri, 9 Nov 2018 22:20:54 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6BAFE2F30D; Fri, 9 Nov 2018 22:20:54 +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=-15.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI, USER_IN_DEF_DKIM_WL 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 1A8BC2F2C7 for ; Fri, 9 Nov 2018 22:20:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728132AbeKJID1 (ORCPT ); Sat, 10 Nov 2018 03:03:27 -0500 Received: from mail-yb1-f201.google.com ([209.85.219.201]:36562 "EHLO mail-yb1-f201.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727746AbeKJID1 (ORCPT ); Sat, 10 Nov 2018 03:03:27 -0500 Received: by mail-yb1-f201.google.com with SMTP id u14-v6so3469859ybi.3 for ; Fri, 09 Nov 2018 14:20:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=j1EazihaPpCDX3xk0jW8cPBkb5jUYLNjbT8UbODOL7A=; b=WYLzAB6j+x+goqDIMxPixoUmLvGkwqfU3gKgUNApPs/1U3OnOk91/yqhbgeBf17hSS ifEc29ch4OBZPkkC8thFd270kaC78yAZ2568FH2jGzssCvAMrGpFVVrSP5dXcuxEixFi V1dqxCVAWZ1wv/Z+FhWVXMoWeSBKfxhzX8wdv1FEVghBQxcbKCu9uN0MZvInWBcUqMm/ 22Q6CcThwKEO3O0vrvEykCLPU75qRBYBDBaBSGGT68ljD4AMN0J/j+j9mkY0rUbDC49e kns9EwncAeyIk7SB4mLkUUYqKPhm1P7BJRBWZjLPIR3thtbfMYir2xB8qoANYyejGfYz S7/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=j1EazihaPpCDX3xk0jW8cPBkb5jUYLNjbT8UbODOL7A=; b=JvmMo/4gexo106gh7rbwXhnDXriCb+73EvIWu3N5Ymg7/QTmNqYvX7V6c0/os+kixk R9KheYQERXqRiBbV23GGTUdzzzlVpueblN7OdzGqDcrqjvzphvMWXdsESiRNBtSRcv+Y SmJR2hAqoyVtjAgf9GdWXqZrjWlJrdJqSIw2U/OO/e4bsk+zVm7faEvpfsGqZ8jSyU0k r/d3akmP8ZAmnElk5vhwyPJs2mALa+reUpcSF/hdD8VEqJfe277ztTKLXAgg/jQc/Huf cutrtBGv/Kx8hK2pPZUe0G8Ha6vnt2nHPZi7wzoVU6BG+wEKzTLC/NzdBL05ChP3YJj6 +RSw== X-Gm-Message-State: AGRZ1gLY934FamzmfxoCyoeB3/0B9gPrDFpyA//E2cY5RL4PSPVARVNJ rLyvGplsufwUs5qHDI0Fw+TilAefXOB5l5mMqxpLbtkXEF7B7Xxnz/YN5LeLSvPRHSMyHWsolh0 pI3mIa8IPW9kYzEzg3of0a0wVdv3p8ZBzVf1Sj/FClYYpwe/cVja3rJ9aV2niXkM= X-Google-Smtp-Source: AJdET5cXKlq/AC9HBgLQVF5AYE9bYYHc0+Mjblap47GSB9+f8ZAh0g9boNHmA3Jnc6pheeSEy/6nSiyoWUu69g== X-Received: by 2002:a81:a082:: with SMTP id x124-v6mr5390241ywg.18.1541802051492; Fri, 09 Nov 2018 14:20:51 -0800 (PST) Date: Fri, 9 Nov 2018 14:20:42 -0800 In-Reply-To: <5A2F3B41-F70D-42DA-A1E6-7D2759C171AB@oracle.com> Message-Id: <20181109222042.60248-1-jmattson@google.com> Mime-Version: 1.0 References: <5A2F3B41-F70D-42DA-A1E6-7D2759C171AB@oracle.com> X-Mailer: git-send-email 2.19.1.930.g4563a0d9d0-goog Subject: [PATCH v2 1/4] kvm: vmx: Set IA32_TSC_AUX for legacy mode guests From: Jim Mattson To: kvm@vger.kernel.org Cc: Marc Orr , Peter Shier , Liran Alon , Jim Mattson Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP RDTSCP is supported in legacy mode as well as long mode. The IA32_TSC_AUX MSR should be set to the correct guest value before entering any guest that supports RDTSCP. Fixes: 4e47c7a6d714 ("KVM: VMX: Add instruction rdtscp support for guest") Signed-off-by: Jim Mattson Reviewed-by: Peter Shier Reviewed-by: Marc Orr Reviewed-by: Liran Alon --- arch/x86/kvm/vmx.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index ccc6a01eb4f4..120fc97a63fc 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -3415,9 +3415,6 @@ static void setup_msrs(struct vcpu_vmx *vmx) index = __find_msr_index(vmx, MSR_CSTAR); if (index >= 0) move_msr_up(vmx, index, save_nmsrs++); - index = __find_msr_index(vmx, MSR_TSC_AUX); - if (index >= 0 && guest_cpuid_has(&vmx->vcpu, X86_FEATURE_RDTSCP)) - move_msr_up(vmx, index, save_nmsrs++); /* * MSR_STAR is only needed on long mode guests, and only * if efer.sce is enabled. @@ -3430,6 +3427,9 @@ static void setup_msrs(struct vcpu_vmx *vmx) index = __find_msr_index(vmx, MSR_EFER); if (index >= 0 && update_transition_efer(vmx, index)) move_msr_up(vmx, index, save_nmsrs++); + index = __find_msr_index(vmx, MSR_TSC_AUX); + if (index >= 0 && guest_cpuid_has(&vmx->vcpu, X86_FEATURE_RDTSCP)) + move_msr_up(vmx, index, save_nmsrs++); vmx->save_nmsrs = save_nmsrs; From patchwork Fri Nov 9 22:21:29 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jim Mattson X-Patchwork-Id: 10676651 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3D72114BD for ; Fri, 9 Nov 2018 22:21:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2DFEE2F2C7 for ; Fri, 9 Nov 2018 22:21:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1F51F2F30D; Fri, 9 Nov 2018 22:21:39 +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=-15.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI, USER_IN_DEF_DKIM_WL 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 012DF2F2C7 for ; Fri, 9 Nov 2018 22:21:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728294AbeKJIEL (ORCPT ); Sat, 10 Nov 2018 03:04:11 -0500 Received: from mail-pg1-f201.google.com ([209.85.215.201]:44469 "EHLO mail-pg1-f201.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727746AbeKJIEL (ORCPT ); Sat, 10 Nov 2018 03:04:11 -0500 Received: by mail-pg1-f201.google.com with SMTP id a2so2115260pgt.11 for ; Fri, 09 Nov 2018 14:21:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=SrUmZiRUnNW01JpxEki4FlDcS9x4xXSKKg8MtZhVpx8=; b=Da5T5f5LU1U8/7wsZRicvmkZNkoX6gJuODq6HLGxLGjAL61nSn96WB4IvM//FICDEz DsGB5iqCqauGuijw4hfmncLgsL1Bw48cEyzAo59KHtE1sbvNFZp4ofZvcBtDZ93gDQjt Tw/iPPBSS/9L1C9QvwCQBMEa5B858Qj5I6ziM+v6oMU4aG9cfdEdGuRh6U2k5P0N5+9Q DI6DYRhqUeMU2xUXBjbZSHVxEtuvmspNxg0ob2PHxel+V2EefSKdoXGgn7ISf8nfQ0kF Wry6c6E4oBr9Vzry8qEcRJtc2qiXHIqvJ7bb/b9RKT702en21mtPA/pM/Itu5ONKAllJ sA3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=SrUmZiRUnNW01JpxEki4FlDcS9x4xXSKKg8MtZhVpx8=; b=XbCk3EY8e9SuO9oo7BGNzEwhOSzK+fp9kHbf+DTiXiSvv3gb/FwZhzyvTtZY8Ua6ZY AQq8zr/PXIUvIVSua9rWaQ6FaB/q0fhIDR/mSFepcHUBKUs98vgCkDsdXzh1cpXuZkDn kL8nflwt5v6CdNS7fAJ7ecOutZ10UlQ+uGwVtAiYiOBUiSgDItSZenlO5P1LH2nAtQHd /zm/OOxwW1U7xd8BNNCikkNYMZ0xciLD3Uhxwu794JKLaL535SfsWihUc1jR5/8X3awL gxxtWJYIzD/f+royL8Guez7X+SjRY6bqqNqHDddOT/rsXLQdkLRA+M6XrgDmV5GJ+wgC olHg== X-Gm-Message-State: AGRZ1gKZkZBMR926w8hiAMcrPO/ynQ9xtNLoZzDpWQLyd2ujNXGLLJoq cKG4uuBzQg8zxs3DfkYF9pAB2ZIWq/HIsOy4/25g4yCF8+dxime8VY7Bg8ia44EiBM0v+x2HaAX S6mldMlSSco7ioWeM0leQ7QWrDWw7rqdfvyNHusnvL9TTn1XWKIs3wqs1jrkI0nI= X-Google-Smtp-Source: AJdET5dfFg9c6LGOTairD69751cuxS5l8eNN90xoABIqyf2G5LHKUyfzkxENq7dl8B8YwzeFOwkuayKgQtG9bg== X-Received: by 2002:a17:902:b08c:: with SMTP id p12-v6mr115330plr.64.1541802096001; Fri, 09 Nov 2018 14:21:36 -0800 (PST) Date: Fri, 9 Nov 2018 14:21:29 -0800 Message-Id: <20181109222131.60885-1-jmattson@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.19.1.930.g4563a0d9d0-goog Subject: [PATCH v2 2/4] kvm: vmx: Omit MSR_STAR from vmx_msr_index[] for i386 builds From: Jim Mattson To: kvm@vger.kernel.org Cc: Marc Orr , Peter Shier , Liran Alon , Jim Mattson Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The SYSCALL instruction is only supported in 64-bit mode on Intel CPUs. With VT-x, A legacy-mode hypervisor can't launch a long-mode guest. Therefore, we can omit MSR_STAR support for i386 builds. Note that the elided comment has not been relevant since move_msr_up() was introduced in commit a75beee6e4f5d ("KVM: VMX: Avoid saving and restoring msrs on lightweight vmexit"). Signed-off-by: Jim Mattson Reviewed-by: Peter Shier Reviewed-by: Marc Orr --- arch/x86/kvm/vmx.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 120fc97a63fc..da7f43457d49 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -1387,15 +1387,11 @@ static u64 host_efer; static void ept_save_pdptrs(struct kvm_vcpu *vcpu); -/* - * Keep MSR_STAR at the end, as setup_msrs() will try to optimize it - * away by decrementing the array size. - */ static const u32 vmx_msr_index[] = { #ifdef CONFIG_X86_64 - MSR_SYSCALL_MASK, MSR_LSTAR, MSR_CSTAR, + MSR_SYSCALL_MASK, MSR_STAR, MSR_LSTAR, MSR_CSTAR, #endif - MSR_EFER, MSR_TSC_AUX, MSR_STAR, + MSR_EFER, MSR_TSC_AUX }; DEFINE_STATIC_KEY_FALSE(enable_evmcs); From patchwork Fri Nov 9 22:21:30 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jim Mattson X-Patchwork-Id: 10676653 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 48D4113AD for ; Fri, 9 Nov 2018 22:21:40 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3AE1B2F2C7 for ; Fri, 9 Nov 2018 22:21:40 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2F40D2F30D; Fri, 9 Nov 2018 22:21:40 +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=-15.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI, USER_IN_DEF_DKIM_WL 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 DA4ED2F2C7 for ; Fri, 9 Nov 2018 22:21:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728375AbeKJIEN (ORCPT ); Sat, 10 Nov 2018 03:04:13 -0500 Received: from mail-pg1-f201.google.com ([209.85.215.201]:34504 "EHLO mail-pg1-f201.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727746AbeKJIEN (ORCPT ); Sat, 10 Nov 2018 03:04:13 -0500 Received: by mail-pg1-f201.google.com with SMTP id 134-v6so2141464pga.1 for ; Fri, 09 Nov 2018 14:21:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=44tQg8wOHP3XLpAU+gAQZIuyFs1UExt3fRLBYzOTXXA=; b=t6dNZKLrfQUsjA2EWIM67SWAo6UujLwrDiHBhPTTmZQSO3tELDqH5K5z99KAvrNg8I xzr3rTgipfW9p0o3WWItZ8n+pXyc9izultxVQCBrnxanMlTVAntas76U/h3xJMAg0fEO kxOrF7QvstiibT0fQAOFodBcNPTh4ndHIhhB6Blu/ojHpu1V3BbLQh2o7LEudwzL/e96 GNeBMSAJn7mYpUNFMDDDWlKTNhbDimbIUlKYd7Fb78Qs8z9yIQ4jjfgqUFsu9TvEPxR6 D3kAyYV8rBkOyGc1QJRyFWuqYQAiv//1svaWN2CQIGBuCcX0RBdhRCqHjQIsASmSxxV6 KwZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=44tQg8wOHP3XLpAU+gAQZIuyFs1UExt3fRLBYzOTXXA=; b=oSTGOqq64C/fgEDcWRrAGuqGjKTWoj3NBYnvLPMhq/u/w/+e4bNXVzbrqmOcc2LkXe rl82IpLdRKvrFauI02NPBlxDBSZ90y55cqFCgHSo1EoLJ/OaNEfWA01L9vJwZPAiGgOP 1Te8nWXmZJQETXX2DlzYTMZ1gS4IIK2S3z3TUtF8p77E1PnfnAlNg6YtCA0axASxDP3P ySyilzDtc6Sgsy7zjlPOKLKzY8U3BD12YmXXl9fM/Q9s/H0E7n0zlRaNtOTVKQwpbY4z aKWJZI6UhoQtoypzv6+eQOZ7zjJ2o+Yy2RJZBfR9tDa+fmveYg6RBmd/GlII+2ix/Cks Z5yg== X-Gm-Message-State: AGRZ1gIMmOxE9JQ6jRxM3WhxDOZEjlEnSo69v08coORcJ8RwwPdVqfE+ 4c4hy02i+o6D3bZHZPrybOugYyOjz5AnCu7wZQohoNxibHGwVg59s3EQy9FCStgCN9Ayxdb78TI qNtiAfnzkykb8TURd/gkLSW99JPbvNPhoDDQqR2z4GZcJiYw9HvL7yAhGblJ+LrE= X-Google-Smtp-Source: AJdET5fvv8qP5+Weto2Ydze1bFU4Vd2TPcJxaZavlwktQ802mdhrhMm37rBA7twRrYXlWuuUdNtka4aGtv8CZg== X-Received: by 2002:a17:902:6ac4:: with SMTP id i4-v6mr570029plt.36.1541802097911; Fri, 09 Nov 2018 14:21:37 -0800 (PST) Date: Fri, 9 Nov 2018 14:21:30 -0800 In-Reply-To: <20181109222131.60885-1-jmattson@google.com> Message-Id: <20181109222131.60885-2-jmattson@google.com> Mime-Version: 1.0 References: <20181109222131.60885-1-jmattson@google.com> X-Mailer: git-send-email 2.19.1.930.g4563a0d9d0-goog Subject: [PATCH v2 3/4] kvm: vmx: Don't set hardware IA32_CSTAR MSR on VM-entry From: Jim Mattson To: kvm@vger.kernel.org Cc: Marc Orr , Peter Shier , Liran Alon , Jim Mattson Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP SYSCALL isn't supported in compatibility mode on Intel CPUs, so IA32_CSTAR is not used (except as 48 bits of storage). It's pointless to load the guest's IA32_CSTAR value into the hardware MSR. Note that we continue to enumerate the MSR in vmx_msr_index[] to provide the aforementioned 48 bits of storage. Signed-off-by: Jim Mattson Reviewed-by: Peter Shier Reviewed-by: Marc Orr --- arch/x86/kvm/vmx.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index da7f43457d49..88692f0b83b1 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -3406,9 +3406,6 @@ static void setup_msrs(struct vcpu_vmx *vmx) if (index >= 0) move_msr_up(vmx, index, save_nmsrs++); index = __find_msr_index(vmx, MSR_LSTAR); - if (index >= 0) - move_msr_up(vmx, index, save_nmsrs++); - index = __find_msr_index(vmx, MSR_CSTAR); if (index >= 0) move_msr_up(vmx, index, save_nmsrs++); /* From patchwork Fri Nov 9 22:21:31 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jim Mattson X-Patchwork-Id: 10676655 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 67C7913B0 for ; Fri, 9 Nov 2018 22:21:42 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 56BC02F2C7 for ; Fri, 9 Nov 2018 22:21:42 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4AD012F30D; Fri, 9 Nov 2018 22:21:42 +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=-15.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI, USER_IN_DEF_DKIM_WL 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 EB6F72F2C7 for ; Fri, 9 Nov 2018 22:21:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728492AbeKJIEP (ORCPT ); Sat, 10 Nov 2018 03:04:15 -0500 Received: from mail-it1-f201.google.com ([209.85.166.201]:41738 "EHLO mail-it1-f201.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727746AbeKJIEP (ORCPT ); Sat, 10 Nov 2018 03:04:15 -0500 Received: by mail-it1-f201.google.com with SMTP id s195-v6so5092448itc.6 for ; Fri, 09 Nov 2018 14:21:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=XFP4sd0PA/QTx1X61vW7ZctSegt8z+RfbnMJnHCdGSY=; b=Cd8Dwu2FbdQjS+pe5Qj/KJBsE+jaWA6fsMruJEuzBFYPULsP4SUnjcnZuxjXuWzGG0 m/wW9wu/pftLED3+FYivmW7v6cTzzJdgWNezIQ4yzaEr8I20L+wC61tBHkyeprQh7chA lZ1Z0DS+lMj0b07iVJ0DrfGu/0CMjhH/vZN2gz7Up6ViiXzpXL2j6g+w8yHPatDWdKlt Qvs8lU0Bibgkl8e2gkeJ9sIfwODtAE123mWGpA6kbsGVtcHvhmDU/YXWmPbnUKhQIF63 pmg1Ha7CU1nXec5gbOsoVNh/cPZTLP4cL3hbEYjO4G3kD5PmWn38/5oA6Mpp55p3wCPy OLLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=XFP4sd0PA/QTx1X61vW7ZctSegt8z+RfbnMJnHCdGSY=; b=o6kUN0SXmM0vlX83u5svNQuSka7DFZrHvgWxjywddihMI3igNvvi0XdKyPK99bZp8B GllIeK+tRfwPs2aH2CT7NRYFBEIgaFVDOSxrueEh9vblrYVTERcWqyHX/wJ1d7MWW1sA 1jiD9bDwnjU7lG2ds/MeNqAUrDFmW82g1rsqvNB8BlDqDSAjpi1/PvwBRTyV3PhRMEs7 f96K6GJ4Mn6kaQhAnx5beg/faN5UpPouaCqoP8KeLhBaAAUYBnvny85T67+GCqjQa5VV 2eO89qW4/0kLbvlBSbndHUXraAuDLqcCSb3CcaqHlrF+F/qdtHbjv/hw6JOsiUpmnhqL SFEw== X-Gm-Message-State: AGRZ1gL8TRwn7gTulZbofdc/Z95qzRDm3sxjYkHxdmyhjpOY5h5XZ1Dj x5V1MXmooVzT8pIZnY64vK4pOPoI4/MS4s5HbVsqBKditgEpDVs/YaVzFRVhkNX9oPKazCbrcHp wX4siyYLh0BvMf8utrWF0rgEmIpgaQgBJSvtMWcSD5JtK4soul2CcP5dH3/jbt5Q= X-Google-Smtp-Source: AJdET5eVkdJlzhs9QIUXeogiaNZRDPbyQrWq4ob3HPM6mNrklMC2S9P+DIKK3jDNQst8BqF1XNhgcHZTcbN9dQ== X-Received: by 2002:a24:2914:: with SMTP id p20-v6mr3418191itp.13.1541802099829; Fri, 09 Nov 2018 14:21:39 -0800 (PST) Date: Fri, 9 Nov 2018 14:21:31 -0800 In-Reply-To: <20181109222131.60885-1-jmattson@google.com> Message-Id: <20181109222131.60885-3-jmattson@google.com> Mime-Version: 1.0 References: <20181109222131.60885-1-jmattson@google.com> X-Mailer: git-send-email 2.19.1.930.g4563a0d9d0-goog Subject: [PATCH v2 4/4] kvm: vmx: Skip all SYSCALL MSRs in setup_msrs() when !EFER.SCE From: Jim Mattson To: kvm@vger.kernel.org Cc: Marc Orr , Peter Shier , Liran Alon , Jim Mattson Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Like IA32_STAR, IA32_LSTAR and IA32_FMASK only need to contain guest values on VM-entry when the guest is in long mode and EFER.SCE is set. Signed-off-by: Jim Mattson Reviewed-by: Peter Shier Reviewed-by: Marc Orr --- arch/x86/kvm/vmx.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 88692f0b83b1..2baebaf4fec7 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -3401,19 +3401,19 @@ static void setup_msrs(struct vcpu_vmx *vmx) save_nmsrs = 0; #ifdef CONFIG_X86_64 - if (is_long_mode(&vmx->vcpu)) { - index = __find_msr_index(vmx, MSR_SYSCALL_MASK); + /* + * The SYSCALL MSRs are only needed on long mode guests, and only + * when EFER.SCE is set. + */ + if (is_long_mode(&vmx->vcpu) && (vmx->vcpu.arch.efer & EFER_SCE)) { + index = __find_msr_index(vmx, MSR_STAR); if (index >= 0) move_msr_up(vmx, index, save_nmsrs++); index = __find_msr_index(vmx, MSR_LSTAR); if (index >= 0) move_msr_up(vmx, index, save_nmsrs++); - /* - * MSR_STAR is only needed on long mode guests, and only - * if efer.sce is enabled. - */ - index = __find_msr_index(vmx, MSR_STAR); - if ((index >= 0) && (vmx->vcpu.arch.efer & EFER_SCE)) + index = __find_msr_index(vmx, MSR_SYSCALL_MASK); + if (index >= 0) move_msr_up(vmx, index, save_nmsrs++); } #endif