All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
	"Denis V. Lunev" <den@openvz.org>,
	"Andreas Färber" <afaerber@suse.de>,
	"Richard Henderson" <rth@twiddle.net>
Subject: [Qemu-devel] [PULL 1/2] hyperv: cpu hotplug fix with HyperV enabled
Date: Fri, 11 Mar 2016 15:47:53 -0300	[thread overview]
Message-ID: <1457722074-25406-2-git-send-email-ehabkost@redhat.com> (raw)
In-Reply-To: <1457722074-25406-1-git-send-email-ehabkost@redhat.com>

From: "Denis V. Lunev" <den@openvz.org>

With Hyper-V enabled CPU hotplug stops working. The CPU appears
in device manager on Windows but does not appear in peformance
monitor and control panel.

The root of the problem is the following. Windows checks
HV_X64_CPU_DYNAMIC_PARTITIONING_AVAILABLE bit in CPUID. The
presence of this bit is enough to cure the situation.

The bit should be set when CPU hotplug is allowed for HyperV VM.
The check that hot_add_cpu callback is defined is enough from the
protocol point of view. Though this callback is defined almost
always thus there is no need to export that knowledge in the
other way.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Roman Kagan <rkagan@virtuozzo.com>
CC: Paolo Bonzini <pbonzini@redhat.com>
CC: Richard Henderson <rth@twiddle.net>
CC: Eduardo Habkost <ehabkost@redhat.com>
CC: "Andreas Färber" <afaerber@suse.de>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
 roms/SLOF         | 2 +-
 roms/openbios     | 2 +-
 target-i386/kvm.c | 1 +
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/roms/SLOF b/roms/SLOF
index e3d0572..b4c9380 160000
--- a/roms/SLOF
+++ b/roms/SLOF
@@ -1 +1 @@
-Subproject commit e3d05727a074619fc12d0a67f05cf2c42c875cce
+Subproject commit b4c93802a5b2c72f096649c497ec9ff5708e4456
diff --git a/roms/openbios b/roms/openbios
index 0dbda5d..bd95e4c 160000
--- a/roms/openbios
+++ b/roms/openbios
@@ -1 +1 @@
-Subproject commit 0dbda5d935f95391d16431cd3c079fbf53d668df
+Subproject commit bd95e4c193905d5ed867e96f1a720ce4cb53b59f
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 7974acb..08d6444 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -639,6 +639,7 @@ int kvm_arch_init_vcpu(CPUState *cs)
         if (cpu->hyperv_crash && has_msr_hv_crash) {
             c->edx |= HV_X64_GUEST_CRASH_MSR_AVAILABLE;
         }
+        c->edx |= HV_X64_CPU_DYNAMIC_PARTITIONING_AVAILABLE;
         if (cpu->hyperv_reset && has_msr_hv_reset) {
             c->eax |= HV_X64_MSR_RESET_AVAILABLE;
         }
-- 
2.1.0

  reply	other threads:[~2016-03-11 18:48 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-11 18:47 [Qemu-devel] [PULL 0/2] X86 fixes Eduardo Habkost
2016-03-11 18:47 ` Eduardo Habkost [this message]
2016-03-11 18:47 ` [Qemu-devel] [PULL 2/2] kvm: Remove x2apic feature from CPU model when kernel_irqchip is off Eduardo Habkost
2016-03-14 16:21 ` [Qemu-devel] [PULL 0/2] X86 fixes Peter Maydell
2016-03-14 20:42   ` Eduardo Habkost
2016-03-14 20:26 [Qemu-devel] [PULL v2 " Eduardo Habkost
2016-03-14 20:26 ` [Qemu-devel] [PULL 1/2] hyperv: cpu hotplug fix with HyperV enabled Eduardo Habkost

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=1457722074-25406-2-git-send-email-ehabkost@redhat.com \
    --to=ehabkost@redhat.com \
    --cc=afaerber@suse.de \
    --cc=den@openvz.org \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.