qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug 1908489] [NEW] qemu 4.2 bootloops with -cpu host and nested hypervi


From: Luqman
Subject: [Bug 1908489] [NEW] qemu 4.2 bootloops with -cpu host and nested hypervisor
Date: Thu, 17 Dec 2020 06:17:09 -0000

Public bug reported:

I've noticed that after upgrading from Ubuntu 18.04 to 20.04 that nested
virtualization isn't working anymore.

I have a simple repro where I create a Windows 10 2004 guest and enable
Hyper-V in it. This worked fine in 18.04 and specifically qemu <4.2 (I
specifically tested Qemu 2.11-4.1 which work fine).

The -cpu arg I'm passing is simply:
    -cpu host,l3-cache=on,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time

Using that Windows won't boot because the nested hypervisor (Hyper-V) is
unable to be initialize and so it just boot loops. Using the exact same
qemu command works fine with 4.1 and lower.

Switching to a named CPU model like Skylake-Client-noTSX-IBRS instead of
host lets the VM boot but causes some weird behaviour later trying to
use nested VMs.

If I had to guess I think it would probably be related to this change
https://github.com/qemu/qemu/commit/20a78b02d31534ae478779c2f2816c273601e869
which would line up with 4.2 being the first bad version but unsure.

For now I just have to keep an older build of QEMU to work around this.
Let me know if there's anything else needed. I can also try out any
patches. I already have at least a dozen copies of qemu lying around
now.

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1908489

Title:
  qemu 4.2 bootloops with -cpu host and nested hypervisor

Status in QEMU:
  New

Bug description:
  I've noticed that after upgrading from Ubuntu 18.04 to 20.04 that
  nested virtualization isn't working anymore.

  I have a simple repro where I create a Windows 10 2004 guest and
  enable Hyper-V in it. This worked fine in 18.04 and specifically qemu
  <4.2 (I specifically tested Qemu 2.11-4.1 which work fine).

  The -cpu arg I'm passing is simply:
      -cpu host,l3-cache=on,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time

  Using that Windows won't boot because the nested hypervisor (Hyper-V)
  is unable to be initialize and so it just boot loops. Using the exact
  same qemu command works fine with 4.1 and lower.

  Switching to a named CPU model like Skylake-Client-noTSX-IBRS instead
  of host lets the VM boot but causes some weird behaviour later trying
  to use nested VMs.

  If I had to guess I think it would probably be related to this change
  https://github.com/qemu/qemu/commit/20a78b02d31534ae478779c2f2816c273601e869
  which would line up with 4.2 being the first bad version but unsure.

  For now I just have to keep an older build of QEMU to work around
  this. Let me know if there's anything else needed. I can also try out
  any patches. I already have at least a dozen copies of qemu lying
  around now.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1908489/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]