Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp511513ybl; Wed, 21 Aug 2019 00:57:30 -0700 (PDT) X-Google-Smtp-Source: APXvYqy1nEspzHKyUcuwro9N2KIDT3kLublYsCR45j0WuRjbmlcd9WBCwnt0GX5/mzOtM63K9HZD X-Received: by 2002:a63:a302:: with SMTP id s2mr28333351pge.125.1566374250197; Wed, 21 Aug 2019 00:57:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1566374250; cv=none; d=google.com; s=arc-20160816; b=XEfWmhjO5Qk115kzbL82N1A3UcZQLrJynwTCDIhpwgfFHpfU5XmIL2U8UzwgYTI7PZ hoYf7JS2IjiaiGLMcIYEYWags/XEGPXIZczytzy8docRCPB+oNPmsNPfuzygW1E77N6U HBFIejPyVsx/XbvLMZ2APnQsaTq9kxI3rBBJMTGv5Mb0lwm703Szors9awkm4S6zygpg 5OFHIZroKWjrVvPbyZ6f1/YD1g0VD24YdkK5TER1cOezWRqFt4kyFINPmFn8rGVHI3h2 nc7Pch+0yQEKJ64SUU3wadvOLQH4mOJdMNO1c929KROySrtnXBGWniwJKT9w8ur4PhT5 CL4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:openpgp:from:references:cc:to:subject; bh=4vtDy+oYLccEJv8Sb5ysrn3Ll8TQTjQAuhILZtXY+9Y=; b=0rp4nAcYr6Is9SZDBI6LaDj6HkkPQjBvE1H0IunRplWR0Qtw90krRMEkW+Y/1ymKoh g4Gsu66WflmQg16BHYYudn0gNHH837gEKs37dBo+Pa/wiBM/RIug+OkMCdthEbRDdn/f 2/Gljve1j4pYTLqz2clr5iRYmstSdF5oFzEf88xaBa45avlcz/mI5DoVpDi7akhkfC4N 1E/QJHtxDera5kyaXSkpJMeCPigDtbvADXK0Jo4BRK+3yCpV1nLS6svUL2SWm1lWYj2Y Omzb7zfC3epYKmUQ2LKbHag87ef4ZAUp9pgknLhp/BT+6LFw50TH25kHJZ0LHZNoTtSw 0P9w== 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=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o185si7601826pfb.206.2019.08.21.00.57.14; Wed, 21 Aug 2019 00:57:30 -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=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726828AbfHUHzr (ORCPT + 99 others); Wed, 21 Aug 2019 03:55:47 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48726 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726523AbfHUHzq (ORCPT ); Wed, 21 Aug 2019 03:55:46 -0400 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7EBA07BDA7 for ; Wed, 21 Aug 2019 07:55:46 +0000 (UTC) Received: by mail-wr1-f71.google.com with SMTP id s18so830596wrt.21 for ; Wed, 21 Aug 2019 00:55:46 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:openpgp:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=4vtDy+oYLccEJv8Sb5ysrn3Ll8TQTjQAuhILZtXY+9Y=; b=ke6SzsuRsJBuTCqmr1P610alFwd/Eu+QGheCEhHo2MPWVemx73zj08CT1W3PZn5hsZ CUILYAvPM5y/z7R0I5ItcgvvKZtmChsQ0PNrTETsNH80M5JYRVhvv9C892DonlBUgkDL GmoqDdVFyY58+Vg9kyozXCg4i5PQDk+6s3mmUYawfouYvhVVrR27f3tQhySiTktP3c8Q 6QakmtH4AcRU4M2/rgNjAZblSgKugxKZ82zBOVoSK1/p78wl8JIzE/WrGBqk9bflYUwI IO4eB38Ppb7Hi5NlCRXqYpmbyQ+i5E24xGNc++tZWOIPuhqGg5HTquGZ5Qye4qq5aCaV p0Yw== X-Gm-Message-State: APjAAAXwECo2b+/ue0uGCmsRDiXexbYizHAuTZQAgIJDwFfgjLmFL0Bl dpIxIV+bE+uFQRDyPc8t93M4EeMmDkL9+a6kMzfoqr9xfd0icbXbOUV6ssKqDn2SudHQjOD/c4t bJUTj2z3BnD3pYrY6uTADCv6j X-Received: by 2002:a05:600c:2292:: with SMTP id 18mr4365234wmf.156.1566374145081; Wed, 21 Aug 2019 00:55:45 -0700 (PDT) X-Received: by 2002:a05:600c:2292:: with SMTP id 18mr4365223wmf.156.1566374144777; Wed, 21 Aug 2019 00:55:44 -0700 (PDT) Received: from ?IPv6:2001:b07:6468:f312:56e1:adff:fed9:caf0? ([2001:b07:6468:f312:56e1:adff:fed9:caf0]) by smtp.gmail.com with ESMTPSA id f10sm17994990wrm.31.2019.08.21.00.55.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Aug 2019 00:55:44 -0700 (PDT) Subject: Re: [PATCH RESEND] i386/kvm: support guest access CORE cstate To: Wanpeng Li Cc: LKML , kvm , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Eduardo Habkost References: <1563154124-18579-1-git-send-email-wanpengli@tencent.com> From: Paolo Bonzini Openpgp: preference=signencrypt Message-ID: <82a0eb75-5710-3b03-cf8e-a00b156ee275@redhat.com> Date: Wed, 21 Aug 2019 09:55:43 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 20/08/19 09:16, Wanpeng Li wrote: > Kindly reminder, :) It's already in my pull request from yesterday. Palo > On Mon, 15 Jul 2019 at 17:16, Paolo Bonzini wrote: >> >> On 15/07/19 03:28, Wanpeng Li wrote: >>> From: Wanpeng Li >>> >>> Allow guest reads CORE cstate when exposing host CPU power management capabilities >>> to the guest. PKG cstate is restricted to avoid a guest to get the whole package >>> information in multi-tenant scenario. >>> >>> Cc: Eduardo Habkost >>> Cc: Paolo Bonzini >>> Cc: Radim Krčmář >>> Signed-off-by: Wanpeng Li >> >> Hi, >> >> QEMU is in hard freeze now. This will be applied after the release. >> >> Thanks, >> >> Paolo >> >>> --- >>> linux-headers/linux/kvm.h | 4 +++- >>> target/i386/kvm.c | 3 ++- >>> 2 files changed, 5 insertions(+), 2 deletions(-) >>> >>> diff --git a/linux-headers/linux/kvm.h b/linux-headers/linux/kvm.h >>> index b53ee59..d648fde 100644 >>> --- a/linux-headers/linux/kvm.h >>> +++ b/linux-headers/linux/kvm.h >>> @@ -696,9 +696,11 @@ struct kvm_ioeventfd { >>> #define KVM_X86_DISABLE_EXITS_MWAIT (1 << 0) >>> #define KVM_X86_DISABLE_EXITS_HLT (1 << 1) >>> #define KVM_X86_DISABLE_EXITS_PAUSE (1 << 2) >>> +#define KVM_X86_DISABLE_EXITS_CSTATE (1 << 3) >>> #define KVM_X86_DISABLE_VALID_EXITS (KVM_X86_DISABLE_EXITS_MWAIT | \ >>> KVM_X86_DISABLE_EXITS_HLT | \ >>> - KVM_X86_DISABLE_EXITS_PAUSE) >>> + KVM_X86_DISABLE_EXITS_PAUSE | \ >>> + KVM_X86_DISABLE_EXITS_CSTATE) >>> >>> /* for KVM_ENABLE_CAP */ >>> struct kvm_enable_cap { >>> diff --git a/target/i386/kvm.c b/target/i386/kvm.c >>> index 3b29ce5..49a0cc1 100644 >>> --- a/target/i386/kvm.c >>> +++ b/target/i386/kvm.c >>> @@ -1645,7 +1645,8 @@ int kvm_arch_init(MachineState *ms, KVMState *s) >>> if (disable_exits) { >>> disable_exits &= (KVM_X86_DISABLE_EXITS_MWAIT | >>> KVM_X86_DISABLE_EXITS_HLT | >>> - KVM_X86_DISABLE_EXITS_PAUSE); >>> + KVM_X86_DISABLE_EXITS_PAUSE | >>> + KVM_X86_DISABLE_EXITS_CSTATE); >>> } >>> >>> ret = kvm_vm_enable_cap(s, KVM_CAP_X86_DISABLE_EXITS, 0, >>> >>