From: Mark Kanda <mark.kanda@oracle.com>
To: qemu-devel@nongnu.org
Cc: pbonzini@redhat.com, mtosatti@redhat.com
Subject: [Qemu-devel] [PATCH-for-4.2 1/1] Only enable the halt poll control MSR if it is supported by the host
Date: Tue, 16 Jul 2019 16:44:11 -0500 [thread overview]
Message-ID: <1563313451-19861-2-git-send-email-mark.kanda@oracle.com> (raw)
In-Reply-To: <1563313451-19861-1-git-send-email-mark.kanda@oracle.com>
The halt poll control MSR should only be enabled on hosts which
support it.
Fixes: ("kvm: i386: halt poll control MSR support")
Signed-off-by: Mark Kanda <mark.kanda@oracle.com>
---
target/i386/cpu.c | 8 +++++++-
target/i386/kvm.c | 2 --
target/i386/machine.c | 1 -
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
index a8bafdb8b9..dacbf7a9fe 100644
--- a/target/i386/cpu.c
+++ b/target/i386/cpu.c
@@ -2838,7 +2838,6 @@ static PropValue kvm_default_props[] = {
{ "kvm-asyncpf", "on" },
{ "kvm-steal-time", "on" },
{ "kvm-pv-eoi", "on" },
- { "kvm-poll-control", "on" },
{ "kvmclock-stable-bit", "on" },
{ "x2apic", "on" },
{ "acpi", "off" },
@@ -5109,6 +5108,13 @@ static void x86_cpu_expand_features(X86CPU *cpu, Error **errp)
env->cpuid_xlevel2 = env->cpuid_min_xlevel2;
}
+ /* Enable the halt poll control MSR if it is supported by the host */
+ if (x86_cpu_get_supported_feature_word(FEAT_KVM, cpu->migratable) &
+ (1 << KVM_FEATURE_POLL_CONTROL)) {
+ env->features[FEAT_KVM] |= 1 << KVM_FEATURE_POLL_CONTROL;
+ env->poll_control_msr = 1;
+ }
+
out:
if (local_err != NULL) {
error_propagate(errp, local_err);
diff --git a/target/i386/kvm.c b/target/i386/kvm.c
index cb22684139..81dd5d2c1b 100644
--- a/target/i386/kvm.c
+++ b/target/i386/kvm.c
@@ -1796,8 +1796,6 @@ void kvm_arch_reset_vcpu(X86CPU *cpu)
hyperv_x86_synic_reset(cpu);
}
- /* enabled by default */
- env->poll_control_msr = 1;
}
void kvm_arch_do_init_vcpu(X86CPU *cpu)
diff --git a/target/i386/machine.c b/target/i386/machine.c
index 20077a8a5a..9d6095b264 100644
--- a/target/i386/machine.c
+++ b/target/i386/machine.c
@@ -394,7 +394,6 @@ static bool steal_time_msr_needed(void *opaque)
return cpu->env.steal_time_msr != 0;
}
-/* Poll control MSR enabled by default */
static bool poll_control_msr_needed(void *opaque)
{
X86CPU *cpu = opaque;
--
2.21.0
next prev parent reply other threads:[~2019-07-16 21:43 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-16 21:44 [Qemu-devel] [PATCH-for-4.2 0/1] Only enable the halt poll control MSR if it is supported by the host Mark Kanda
2019-07-16 21:44 ` Mark Kanda [this message]
2019-07-17 9:40 ` [Qemu-devel] [PATCH-for-4.2 1/1] " Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1563313451-19861-2-git-send-email-mark.kanda@oracle.com \
--to=mark.kanda@oracle.com \
--cc=mtosatti@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).