From patchwork Wed Mar 27 20:15:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jim Mattson X-Patchwork-Id: 10873919 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 E04E817E0 for ; Wed, 27 Mar 2019 20:16:02 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CE19C28A14 for ; Wed, 27 Mar 2019 20:16:02 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C256C28A1E; Wed, 27 Mar 2019 20:16:02 +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 5242128A14 for ; Wed, 27 Mar 2019 20:16:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728396AbfC0UP4 (ORCPT ); Wed, 27 Mar 2019 16:15:56 -0400 Received: from mail-qk1-f202.google.com ([209.85.222.202]:55673 "EHLO mail-qk1-f202.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727089AbfC0UPy (ORCPT ); Wed, 27 Mar 2019 16:15:54 -0400 Received: by mail-qk1-f202.google.com with SMTP id g25so11026737qkm.22 for ; Wed, 27 Mar 2019 13:15:54 -0700 (PDT) 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=62C36WTkoQxTIAur2ZyiZ4LGsNXbXbjmJa/X4a4kyf4=; b=cGe0UEAP2anhPHyEav1Q0XN/AebuyUZoEPaYEaTqiFcpjLRJSTN19UVb5UATRULrXM 3WRgc8AG1q0cIWVlpoeCY7ZH5CosdLA8OMeNzfQ+q7ItyF2pFZkamAVsOCk1G4kwbb3A n7qO5NZlPDoC2udShs6uuKowxSL4XWaBkAXAQiCtfvYWG/G0bUkKS2pJ2XvDm7srr86i VlwaiHOCJKXQu/Els7zELQQUuS19FfHqxAsPS+WIhE3ErBZbYa70anNHcdxSPQGk37Un O5E+Inh0rCHtyN0l7Gis0omnANBS2WMburxy9LjpwypRRC56Ftoe4Z2WARcTwDG85N62 BsOw== 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=62C36WTkoQxTIAur2ZyiZ4LGsNXbXbjmJa/X4a4kyf4=; b=dxPQJmTPo8JXb1tRiH21QnXabl2SEI/baKI8gDT873zfkUwTaq2xBnCxxFnrwGZP2G 4+HKUYTgArihh+PX9FSfdb/qChFBUlLljuvos7fKsux6mAXPgtpbhTthx+l4RvRJVR/4 qqiWKdmdowl+/a9D8kvNZyxtet9y2gADX/GVx35qV8yfYVeSKp1VqTYNPeQ8wqPj8QIX rve5PuN1Bqeq/jHAF/hZleFtk5ZN39uhcoDsuhfey3VTHICPVpGxGKjmaJ4zrcU+Ep7+ fSMknnKh9YMtlom/FKoCWTyiM36WqTsrCiJshAoYf5NAVThtElb+mjAFns4GVbgpHskm hxSw== X-Gm-Message-State: APjAAAV05wbySfvFULO2Sg05B6NVi6jplWnrN11EfEtUAUq6POsEeK3c AernAjhuAbT+mKlML4VHAMP1QGwVw6H2P1GuNQTuchi7VhUWq0c1BBE8vR9RNFcEutG9ZAH2mNW +8DgE/Tx4Q1zgzc4Tcao0OdshIerYNRzTL9ZfSLpzp9KpBYOH/nAdeCnJxIYT1p8= X-Google-Smtp-Source: APXvYqzyNTBSX9tKOvV13VgA3nR8IWzZ7Ym9sBBjNFULJRey+qvTzXICaxbhIF5yiQs8ZTKBjkAJpUpFM1KJ9w== X-Received: by 2002:ac8:33cc:: with SMTP id d12mr1672622qtb.27.1553717753599; Wed, 27 Mar 2019 13:15:53 -0700 (PDT) Date: Wed, 27 Mar 2019 13:15:36 -0700 Message-Id: <20190327201537.77350-1-jmattson@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.21.0.392.gf8f6787159e-goog Subject: [PATCH 1/2] kvm: x86: Include multiple indices with CPUID leaf 0x8000001d From: Jim Mattson To: kvm@vger.kernel.org Cc: Jim Mattson , Brijesh Singh , Borislav Petkov , Marc Orr Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Per the APM, "CPUID Fn8000_001D_E[D,C,B,A]X reports cache topology information for the cache enumerated by the value passed to the instruction in ECX, referred to as Cache n in the following description. To gather information for all cache levels, software must repeatedly execute CPUID with 8000_001Dh in EAX and ECX set to increasing values beginning with 0 until a value of 00h is returned in the field CacheType (EAX[4:0]) indicating no more cache descriptions are available for this processor." The termination condition is the same as leaf 4, so we can reuse that code block for leaf 0x8000001d. Fixes: 8765d75329a38 ("KVM: X86: Extend CPUID range to include new leaf") Cc: Brijesh Singh Cc: Borislav Petkov Signed-off-by: Jim Mattson Reviewed-by: Marc Orr Reviewed-by: Borislav Petkov --- arch/x86/kvm/cpuid.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c index fd3951638ae4..d22bba0b2ecc 100644 --- a/arch/x86/kvm/cpuid.c +++ b/arch/x86/kvm/cpuid.c @@ -455,8 +455,9 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, } break; } - /* function 4 has additional index. */ - case 4: { + /* functions 4 and 0x8000001d have additional index. */ + case 4: + case 0x8000001d: { int i, cache_type; entry->flags |= KVM_CPUID_FLAG_SIGNIFCANT_INDEX; @@ -701,8 +702,6 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, break; case 0x8000001a: break; - case 0x8000001d: - break; /*Add support for Centaur's CPUID instruction*/ case 0xC0000000: /*Just support up to 0xC0000004 now*/ From patchwork Wed Mar 27 20:15:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jim Mattson X-Patchwork-Id: 10873921 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 C71CC922 for ; Wed, 27 Mar 2019 20:16:08 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B5F1328A14 for ; Wed, 27 Mar 2019 20:16:08 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A9FFB28A1E; Wed, 27 Mar 2019 20:16:08 +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 50A9F28A14 for ; Wed, 27 Mar 2019 20:16:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729005AbfC0UQH (ORCPT ); Wed, 27 Mar 2019 16:16:07 -0400 Received: from mail-qk1-f202.google.com ([209.85.222.202]:47575 "EHLO mail-qk1-f202.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727089AbfC0UQG (ORCPT ); Wed, 27 Mar 2019 16:16:06 -0400 Received: by mail-qk1-f202.google.com with SMTP id i124so15591692qkf.14 for ; Wed, 27 Mar 2019 13:16:06 -0700 (PDT) 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=6t5fxNOacD5uNvV6Qz8evclmPhZJfWhrQiJzH8fJJLU=; b=aYUB/QbwgViMQmIKzGGcITinVul4wg6kEEgtPze0RtEfuRjm/diS5YStMKR4MZ/gHN Ci4EyXK0solq62kEPVT/TYlsn79AdOyBbjBQjg/DbDIrbLiTiDC3dUfHQ02df1TpPn1N MX4ijqf0eXShgo3O20wA94Dv0eUjXt5latXSzTW8x9Q/YFygUNOnaMSFbRTg61mhyaN9 TygN0D0io8JFtEO7oqN2WEDRKWq7yDVdTcFmp4qDuToi37d8vrnolCWQPea2FTKLpPdq MGmTABjV08VsTOpPzkfcHT57HWnc149lD1wnCZDwZmX7oWw9E/1HZbxYtM6wqyu4gf/F riRA== 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=6t5fxNOacD5uNvV6Qz8evclmPhZJfWhrQiJzH8fJJLU=; b=L/imhr2CaVA2uAKKelfmyQOocCkzbRNSfhIiIJVSzaMI1vNbF+4J57XsP+ehEPj/VO JwKoP234Mc2B4GtRCOIVIZYIrvrkoT4tHuu/s7lWARf2mfnJuQsTtTJaHoWKEdA3C26a 6gJtbeWoDrLWbpSL3fdnHWnFvBkyl+mRxWPeZ0mbxpeg4CSuQq9f7uiWBdmUGWol9Ulm cgwuvPkqP5p6LugNKXnjgpLmsdrKAa87yx53rgczIx7E7aS12SVW894M54+ESiU1tDOe kUuTK3btv37oty2e/jUJeTINK7kHPD9g6nnMR2WwJURACPfoBfhBNIlqE6thpZSDnOij 2QBA== X-Gm-Message-State: APjAAAVlNBQUgdIrVbe0GNpJxOyrHeWROyRz47CrnEOCpSUmMmPj+xzp KPYxl3m4hEGEUA9smpmUuI3l+cBrA3BUY7IijLEUhI0EDwaNNvGdosaBip/wfFksVTBRpFGtdLF DA2FW6hQt5ipCkZ7unwR9cakiTLmDGv5rNiUzPglggjdMNqA6vBmaB0sWwjG6Bi4= X-Google-Smtp-Source: APXvYqxE8MEhjocgn/k2LLyDjW5qQWlGSQxblxFRgRLH8OqSrtC7A4n+gR0AqOSOUcXYSyhGNsWMnu4jWhJ13A== X-Received: by 2002:a37:7f07:: with SMTP id a7mr1664837qkd.24.1553717765905; Wed, 27 Mar 2019 13:16:05 -0700 (PDT) Date: Wed, 27 Mar 2019 13:15:37 -0700 In-Reply-To: <20190327201537.77350-1-jmattson@google.com> Message-Id: <20190327201537.77350-2-jmattson@google.com> Mime-Version: 1.0 References: <20190327201537.77350-1-jmattson@google.com> X-Mailer: git-send-email 2.21.0.392.gf8f6787159e-goog Subject: [PATCH 2/2] kvm: x86: Include CPUID leaf 0x8000001e in kvm's supported CPUID From: Jim Mattson To: kvm@vger.kernel.org Cc: Jim Mattson , Brijesh Singh , Borislav Petkov , Marc Orr Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Kvm now supports extended CPUID functions through 0x8000001f. CPUID leaf 0x8000001e is AMD's Processor Topology Information leaf. This contains similar information to CPUID leaf 0xb (Intel's Extended Topology Enumeration leaf), and should be included in the output of KVM_GET_SUPPORTED_CPUID, even though userspace is likely to override some of this information based upon the configuration of the particular VM. Cc: Brijesh Singh Cc: Borislav Petkov Fixes: 8765d75329a38 ("KVM: X86: Extend CPUID range to include new leaf") Signed-off-by: Jim Mattson Reviewed-by: Marc Orr Reviewed-by: Borislav Petkov --- arch/x86/kvm/cpuid.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c index d22bba0b2ecc..ad1096e7b861 100644 --- a/arch/x86/kvm/cpuid.c +++ b/arch/x86/kvm/cpuid.c @@ -701,6 +701,7 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, entry->ecx = entry->edx = 0; break; case 0x8000001a: + case 0x8000001e: break; /*Add support for Centaur's CPUID instruction*/ case 0xC0000000: