qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Bug 1859310] [NEW] libvirt probing fails due to assertion failure with KVM and 'none' machine type
@ 2020-01-12  2:36 Joey Adams
  2020-01-31 14:52 ` [Bug 1859310] " Joey Adams
  2020-08-20 15:40 ` Thomas Huth
  0 siblings, 2 replies; 3+ messages in thread
From: Joey Adams @ 2020-01-12  2:36 UTC (permalink / raw)
  To: qemu-devel

Public bug reported:

Using libvirt on Ubuntu 19.10, I get the following error when I try to
set <emulator> to the latest qemu from git (commit dc65a5bdc9):

    error: internal error: Failed to start QEMU binary /usr/local/bin
/qemu-system-x86_64 for probing:
/home/joey/git/qemu/target/i386/kvm.c:2176:kvm_arch_init: Object
0x564bfd5c3200 is not an instance of type x86-machine

Qemu command line to reproduce:

    sudo x86_64-softmmu/qemu-system-x86_64 -machine 'none,accel=kvm'

Commit ed9e923c3c (Dec 12, 2019) introduced the issue by removing an
object_dynamic_cast call.  In this scenario, kvm_arch_init is passed an
instance of "none-machine" instead of "x86-machine".

The following one-line change to target/i386/kvm.c reintroduces the
cast:

     if (kvm_check_extension(s, KVM_CAP_X86_SMM) &&
+        object_dynamic_cast(OBJECT(ms), TYPE_X86_MACHINE) &&
         x86_machine_is_smm_enabled(X86_MACHINE(ms))) {
         smram_machine_done.notify = register_smram_listener;
         qemu_add_machine_init_done_notifier(&smram_machine_done);
     }

** 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/1859310

Title:
  libvirt probing fails due to assertion failure with KVM and 'none'
  machine type

Status in QEMU:
  New

Bug description:
  Using libvirt on Ubuntu 19.10, I get the following error when I try to
  set <emulator> to the latest qemu from git (commit dc65a5bdc9):

      error: internal error: Failed to start QEMU binary /usr/local/bin
  /qemu-system-x86_64 for probing:
  /home/joey/git/qemu/target/i386/kvm.c:2176:kvm_arch_init: Object
  0x564bfd5c3200 is not an instance of type x86-machine

  Qemu command line to reproduce:

      sudo x86_64-softmmu/qemu-system-x86_64 -machine 'none,accel=kvm'

  Commit ed9e923c3c (Dec 12, 2019) introduced the issue by removing an
  object_dynamic_cast call.  In this scenario, kvm_arch_init is passed
  an instance of "none-machine" instead of "x86-machine".

  The following one-line change to target/i386/kvm.c reintroduces the
  cast:

       if (kvm_check_extension(s, KVM_CAP_X86_SMM) &&
  +        object_dynamic_cast(OBJECT(ms), TYPE_X86_MACHINE) &&
           x86_machine_is_smm_enabled(X86_MACHINE(ms))) {
           smram_machine_done.notify = register_smram_listener;
           qemu_add_machine_init_done_notifier(&smram_machine_done);
       }

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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug 1859310] Re: libvirt probing fails due to assertion failure with KVM and 'none' machine type
  2020-01-12  2:36 [Bug 1859310] [NEW] libvirt probing fails due to assertion failure with KVM and 'none' machine type Joey Adams
@ 2020-01-31 14:52 ` Joey Adams
  2020-08-20 15:40 ` Thomas Huth
  1 sibling, 0 replies; 3+ messages in thread
From: Joey Adams @ 2020-01-31 14:52 UTC (permalink / raw)
  To: qemu-devel

This was fixed in commit 8f54bbd0b4 "x86: Check for machine state object
class before typecasting it".

** Changed in: qemu
       Status: New => Fix Committed

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

Title:
  libvirt probing fails due to assertion failure with KVM and 'none'
  machine type

Status in QEMU:
  Fix Committed

Bug description:
  Using libvirt on Ubuntu 19.10, I get the following error when I try to
  set <emulator> to the latest qemu from git (commit dc65a5bdc9):

      error: internal error: Failed to start QEMU binary /usr/local/bin
  /qemu-system-x86_64 for probing:
  /home/joey/git/qemu/target/i386/kvm.c:2176:kvm_arch_init: Object
  0x564bfd5c3200 is not an instance of type x86-machine

  Qemu command line to reproduce:

      sudo x86_64-softmmu/qemu-system-x86_64 -machine 'none,accel=kvm'

  Commit ed9e923c3c (Dec 12, 2019) introduced the issue by removing an
  object_dynamic_cast call.  In this scenario, kvm_arch_init is passed
  an instance of "none-machine" instead of "x86-machine".

  The following one-line change to target/i386/kvm.c reintroduces the
  cast:

       if (kvm_check_extension(s, KVM_CAP_X86_SMM) &&
  +        object_dynamic_cast(OBJECT(ms), TYPE_X86_MACHINE) &&
           x86_machine_is_smm_enabled(X86_MACHINE(ms))) {
           smram_machine_done.notify = register_smram_listener;
           qemu_add_machine_init_done_notifier(&smram_machine_done);
       }

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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug 1859310] Re: libvirt probing fails due to assertion failure with KVM and 'none' machine type
  2020-01-12  2:36 [Bug 1859310] [NEW] libvirt probing fails due to assertion failure with KVM and 'none' machine type Joey Adams
  2020-01-31 14:52 ` [Bug 1859310] " Joey Adams
@ 2020-08-20 15:40 ` Thomas Huth
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Huth @ 2020-08-20 15:40 UTC (permalink / raw)
  To: qemu-devel

** Changed in: qemu
       Status: Fix Committed => Fix Released

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

Title:
  libvirt probing fails due to assertion failure with KVM and 'none'
  machine type

Status in QEMU:
  Fix Released

Bug description:
  Using libvirt on Ubuntu 19.10, I get the following error when I try to
  set <emulator> to the latest qemu from git (commit dc65a5bdc9):

      error: internal error: Failed to start QEMU binary /usr/local/bin
  /qemu-system-x86_64 for probing:
  /home/joey/git/qemu/target/i386/kvm.c:2176:kvm_arch_init: Object
  0x564bfd5c3200 is not an instance of type x86-machine

  Qemu command line to reproduce:

      sudo x86_64-softmmu/qemu-system-x86_64 -machine 'none,accel=kvm'

  Commit ed9e923c3c (Dec 12, 2019) introduced the issue by removing an
  object_dynamic_cast call.  In this scenario, kvm_arch_init is passed
  an instance of "none-machine" instead of "x86-machine".

  The following one-line change to target/i386/kvm.c reintroduces the
  cast:

       if (kvm_check_extension(s, KVM_CAP_X86_SMM) &&
  +        object_dynamic_cast(OBJECT(ms), TYPE_X86_MACHINE) &&
           x86_machine_is_smm_enabled(X86_MACHINE(ms))) {
           smram_machine_done.notify = register_smram_listener;
           qemu_add_machine_init_done_notifier(&smram_machine_done);
       }

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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-08-20 15:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-12  2:36 [Bug 1859310] [NEW] libvirt probing fails due to assertion failure with KVM and 'none' machine type Joey Adams
2020-01-31 14:52 ` [Bug 1859310] " Joey Adams
2020-08-20 15:40 ` Thomas Huth

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).