[v3,0/2] Fix virtio-*(-non)-transitional crash on 2.6 machine-types
mbox series

Message ID 20190110180458.18762-1-ehabkost@redhat.com
Headers show
  • Fix virtio-*(-non)-transitional crash on 2.6 machine-types
Related show


Eduardo Habkost Jan. 10, 2019, 6:04 p.m. UTC
Changes v2 -> v3:
* Don't ignore all errors: only ignore optional properties if
  they don't exist
* Patch 1/3 from v2 was already merged on machine-next

Description of v2:

This is a second attempt to fix the crash reported by Thomas[1].

This keeps the compat property array simple, different from my
first attempt[2].

This also avoids extra complexity on the device code: we don't
need interface name, inheritance tricks, or devices overriding a
compat property after the fact.  The simple absence of the QOM
properties on some device types is enough to make the compat code
skip them.

This series is based on my machine-next branch, because of
conflicts with compat property array cleanups that are already

[1] http://mid.mail-archive.com/a28d196a-e2fe-a013-a6e2-99ac260f6279@redhat.com
[2] http://mid.mail-archive.com/20190104032226.21428-1-ehabkost@redhat.com

Eduardo Habkost (2):
  globals: Allow global properties to be optional
  virtio: Make disable-legacy/disable-modern compat properties optional

 include/hw/qdev-core.h | 3 +++
 hw/core/machine.c      | 5 +++--
 qom/object.c           | 3 +++
 3 files changed, 9 insertions(+), 2 deletions(-)