Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1452748imm; Tue, 10 Jul 2018 01:58:32 -0700 (PDT) X-Google-Smtp-Source: AAOMgpe+HTgRWfhBuYVqrSMijnKM76InWQ9Y1yqRPPtx+FrjWJFcAB91hGc3R/Iy+ts1TVex0fSq X-Received: by 2002:a62:4083:: with SMTP id f3-v6mr22177794pfd.229.1531213112167; Tue, 10 Jul 2018 01:58:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531213112; cv=none; d=google.com; s=arc-20160816; b=Sp/VTDJaabMhpxcWFNNcTYDv7/lkL5zPhkqg1yAHLj+QQJRv5AeH6NhSw5Pi6v8dPi 1bMRVpZ0u5B9NsJsk6OPMjPkamXlrx8MG7DtFPWiLumlNP8BO2ftysWWRxYVcvJ1RuCF e/+l6TBMiG++maiethgAhJL/rWzNb4SjPNA/45A9k2ZFxkuKzSpWOdjmOzBqpjoAV15n elQkCYebQxS5UtUQlkxflOehLkEpIDROppquB05gAS6BbSzWDZ2qbsjleba1FPHTfWal /7sRHu0hnjEZWtI2jRWt64vyBc/kagZw8bLAMoqFc0uaaxtI/EGb+gMOWpsECwKZVMu0 aYvQ== 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:arc-authentication-results; bh=z9j7ArNZ6n+oqkJUhGqvBwZLTHBmonGU/NzRvWbO/a8=; b=tL5LXEy19HDiBabyDNV1eD8P81XBVo4h3LARnhc7xgwShoUVxa6ZunkHhrs8wvA5bx QS4hnqNBS/sARuYAEzH6URAgcS+hOB4pk0zvJm2qzpSMOhtPSPYlfIlViMj6E0Un82M3 Nl9JfmtrPoUxIzO2bd/RqNoKMZT+EbTkJybtSd2DgceE8hoMKuWdXCTlmbNzXS731VBo CKWbo68Yv1oU0PNo8rqM4Il1ZBby1gfQRx/0eMM31i9gJ3SkJRL2lrntwizmiIQ9vrTA W98V+INICCa2IvA8e5cHSp+bdnPya2arTyBJURj7Qzb196c/RdKNP/fn0Q0hR7Hx/ag3 92hw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r11-v6si16986300plo.144.2018.07.10.01.58.11; Tue, 10 Jul 2018 01:58:32 -0700 (PDT) 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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933053AbeGJI4K (ORCPT + 99 others); Tue, 10 Jul 2018 04:56:10 -0400 Received: from mga06.intel.com ([134.134.136.31]:44781 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751305AbeGJIz2 (ORCPT ); Tue, 10 Jul 2018 04:55:28 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Jul 2018 01:55:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,333,1526367600"; d="scan'208";a="53258020" Received: from dst.sh.intel.com ([10.239.48.156]) by fmsmga007.fm.intel.com with ESMTP; 10 Jul 2018 01:55:13 -0700 From: Jingqi Liu To: pbonzini@redhat.com, rkrcmar@redhat.com, tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com Cc: x86@kernel.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, wei.w.wang@intel.com, Jingqi Liu Subject: [PATCH 2/3] KVM: x86: expose MOVDIRI CPU feature into VM. Date: Tue, 10 Jul 2018 16:54:42 +0800 Message-Id: <1531212883-63173-3-git-send-email-jingqi.liu@intel.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1531212883-63173-1-git-send-email-jingqi.liu@intel.com> References: <1531212883-63173-1-git-send-email-jingqi.liu@intel.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org MOVDIRI moves doubleword or quadword from register to memory through direct store which is implemented by using write combining (WC) for writing data directly into memory without caching the data. Availability of the MOVDIRI instruction is indicated by the presence of the CPUID feature flag MOVDIRI(CPUID.0x07.0x0:ECX[bit 27]). This patch exposes the movdiri feature to the guest. The release document ref below link: https://software.intel.com/sites/default/files/managed/c5/15/\ architecture-instruction-set-extensions-programming-reference.pdf This patch has a dependency on https://lkml.org/lkml/2018/6/15/654. Signed-off-by: Jingqi Liu --- arch/x86/kvm/cpuid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c index e16c05e..456caf7 100644 --- a/arch/x86/kvm/cpuid.c +++ b/arch/x86/kvm/cpuid.c @@ -406,7 +406,7 @@ static inline int __do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, F(AVX512VBMI) | F(LA57) | F(PKU) | 0 /*OSPKE*/ | F(AVX512_VPOPCNTDQ) | F(UMIP) | F(AVX512_VBMI2) | F(GFNI) | F(VAES) | F(VPCLMULQDQ) | F(AVX512_VNNI) | F(AVX512_BITALG) | - F(CLDEMOTE) | F(WAITPKG); + F(CLDEMOTE) | F(WAITPKG) | F(MOVDIRI); /* cpuid 7.0.edx*/ const u32 kvm_cpuid_7_0_edx_x86_features = -- 1.8.3.1