Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp9994166imu; Wed, 5 Dec 2018 14:04:51 -0800 (PST) X-Google-Smtp-Source: AFSGD/Vj0fiqHcvV6BJjNZC7Zo8uOldQTbrwBNQX0bZRXjjubaQr6IpDrjYrwvpJfFhQM0mcx/MF X-Received: by 2002:a17:902:24a2:: with SMTP id w31mr25410528pla.216.1544047491109; Wed, 05 Dec 2018 14:04:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544047491; cv=none; d=google.com; s=arc-20160816; b=iLo/yxG97wVFHlKhgPT1AAdt8PXh0/rB4O8pGUJ85986TJYFL8mkq8+Xk7cCHDtgYK 28PgPcmgw3vnYKMydaf88AxQ/QD4kZaDnNirJ1S+SCxCAF2bUYQR6geBXEvH8cuHPfSZ IOJPdti5wZ0YyWIGgNFn5D8OzSulM7rrdFdER7WAglnF8nHdg+vTQl1t+SJR86cmLnZP Fp6HIYsPuabCNVLQC6TaqL2T08pVqSFFZXKT5/ySaU003nVm73tIB0ybg5f4j7+fJ62A xFkUTv6uBMhN4NrlB7fovw4AfvE18sJZzoihm3UK+wSg1rid6ckluz6uq9YNGWLc1u0h sSFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=dnK95Ha9vuSbCq4ScqwJPrv/LSu/YMCHUJZyCbC50To=; b=ucgOhGH3xBOA7Bm43DsdCWAXnmW+gcS+1g3wuUX+ufKfTenukKd5iXn4OawPiquLtZ UiD8S3C6t0vOQIX6uTYmnQJH9YAS1mPYHRGK8UmsahwSDpKuFwmN4h18Nj9w+Zn8fCG9 kauIG/8HpHm3yXCPi8vbHd+N1hJzi0qjEpMscMYgeizqsixmAsNNLhsS6O/xFlXGw3Wk IC1QKZBk/lAyEDqZ0Q1HPyRejFWXBVIUgeMW5fB4xf8HPnF3yf5JXXm0JN4osXqSaocY hLkuk9UGvwnbvoYvIe3lpRdwkXWNUOlBGsbsNI3zD1e3cIXuaKYAm+S7DgS3XsKMPc/c 4rbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2018-07-02 header.b=NpIIBjbC; 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=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k7si19329750pgm.462.2018.12.05.14.04.35; Wed, 05 Dec 2018 14:04:51 -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=pass header.i=@oracle.com header.s=corp-2018-07-02 header.b=NpIIBjbC; 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=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728083AbeLEWCc (ORCPT + 99 others); Wed, 5 Dec 2018 17:02:32 -0500 Received: from aserp2130.oracle.com ([141.146.126.79]:38130 "EHLO aserp2130.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727358AbeLEWCc (ORCPT ); Wed, 5 Dec 2018 17:02:32 -0500 Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1]) by aserp2130.oracle.com (8.16.0.22/8.16.0.22) with SMTP id wB5LxTH4065707; Wed, 5 Dec 2018 22:02:10 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=date : from : to : cc : subject : message-id : references : mime-version : content-type : in-reply-to; s=corp-2018-07-02; bh=dnK95Ha9vuSbCq4ScqwJPrv/LSu/YMCHUJZyCbC50To=; b=NpIIBjbCaT/I4b0IHBjHcb7y2Vkl4Gemj2vvU+9EZDvQB7EQ8CVCfNooM+c6VyKMby0+ xdwLlw6PX3H2+rlgT5nJzqduCOXhe6eKNNTvTzwi3RejCil3+xHR6eoreETKTL2vNPu8 95IPrHYMKXY3L+JnqswBdvqHkwldyt7CyXGwUshTHr0wnMWz5jPh7bGaOXwtrU2JS/jA nlrsl/gCxoov50z53L2s0bm1H1aPEV65Xh/9gHiJG3KDRrH2lGGb0EDtebMu11Ve5o0q F0zpxyKklM5nQshJYWgGFKcVpDnVubHZamMo8vTJymgzqsywD3GXe46fyqeXjfBjLGzz Ng== Received: from userv0022.oracle.com (userv0022.oracle.com [156.151.31.74]) by aserp2130.oracle.com with ESMTP id 2p3ftf91p5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Dec 2018 22:02:09 +0000 Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by userv0022.oracle.com (8.14.4/8.14.4) with ESMTP id wB5M29gE014114 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 5 Dec 2018 22:02:09 GMT Received: from abhmp0007.oracle.com (abhmp0007.oracle.com [141.146.116.13]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id wB5M28jp026624; Wed, 5 Dec 2018 22:02:08 GMT Received: from char.us.oracle.com (/10.152.32.25) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Wed, 05 Dec 2018 14:02:07 -0800 Received: by char.us.oracle.com (Postfix, from userid 1000) id B2EE96A00FC; Wed, 5 Dec 2018 17:02:06 -0500 (EST) Date: Wed, 5 Dec 2018 17:02:06 -0500 From: Konrad Rzeszutek Wilk To: Eduardo Habkost Cc: Paolo Bonzini , Radim =?utf-8?B?S3LEjW3DocWZ?= , kvm@vger.kernel.org, Jim Mattson , x86@kernel.org, linux-kernel@vger.kernel.org, KarimAllah Ahmed , David Woodhouse Subject: Re: [PATCH] kvm: x86: Report STIBP on GET_SUPPORTED_CPUID Message-ID: <20181205220206.GA16013@char.us.oracle.com> References: <20181205191956.31480-1-ehabkost@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20181205191956.31480-1-ehabkost@redhat.com> User-Agent: Mutt/1.8.3 (2017-05-23) X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=9098 signatures=668679 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1812050192 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Dec 05, 2018 at 05:19:56PM -0200, Eduardo Habkost wrote: > Months ago, we have added code to allow direct access to MSR_IA32_SPEC_CTRL > to the guest, which makes STIBP available to guests. This was implemented > by commits d28b387fb74d ("KVM/VMX: Allow direct access to > MSR_IA32_SPEC_CTRL") and b2ac58f90540 ("KVM/SVM: Allow direct access to > MSR_IA32_SPEC_CTRL"). > > However, we never updated GET_SUPPORTED_CPUID to let userspace know that > STIBP can be enabled in CPUID. Fix that by updating Ooops! > kvm_cpuid_8000_0008_ebx_x86_features and kvm_cpuid_7_0_edx_x86_features. Shouldn't there also be a patch in QEMU to use it? (aka, +stibp). Reviewed-by: Konrad Rzeszutek Wilk Thank you! > Signed-off-by: Eduardo Habkost > --- > arch/x86/kvm/cpuid.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c > index 7bcfa61375c0..cc6dd65828a4 100644 > --- a/arch/x86/kvm/cpuid.c > +++ b/arch/x86/kvm/cpuid.c > @@ -381,7 +381,7 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, > /* cpuid 0x80000008.ebx */ > const u32 kvm_cpuid_8000_0008_ebx_x86_features = > F(AMD_IBPB) | F(AMD_IBRS) | F(AMD_SSBD) | F(VIRT_SSBD) | > - F(AMD_SSB_NO); > + F(AMD_SSB_NO) | F(AMD_STIBP); > > /* cpuid 0xC0000001.edx */ > const u32 kvm_cpuid_C000_0001_edx_x86_features = > @@ -411,7 +411,7 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, > /* cpuid 7.0.edx*/ > const u32 kvm_cpuid_7_0_edx_x86_features = > F(AVX512_4VNNIW) | F(AVX512_4FMAPS) | F(SPEC_CTRL) | > - F(SPEC_CTRL_SSBD) | F(ARCH_CAPABILITIES); > + F(SPEC_CTRL_SSBD) | F(ARCH_CAPABILITIES) | F(INTEL_STIBP); > > /* all calls to cpuid_count() should be made on the same cpu */ > get_cpu(); > -- > 2.18.0.rc1.1.g3f1ff2140 >