[libvirt] [PATCH 00/20] 20 crazy IVSHMEM patches you won't believe compile

Martin Kletzander mkletzan at redhat.com
Thu Sep 15 16:14:25 UTC 2016


Let's see if the subject works if one is in need of reviews =)

Yet another qemu device, right?  We even have an existing device for
that, right?  That should be pretty straight-forward and easy, right?
Well, let's see...  I, at least, tried splitting the patches for you
to be as easy to review as possible.

Just in case you're trying out the hot-(un)plug on an upstream QEMU,
make sure you do it on i440fx machine, not on q35 one, otherwise it
will not work nicely (or rather at all).

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1347049


Martin Kletzander (20):
  qemuhotplugtest: Only read result_filename if used
  schema: Allow shmem to have alias
  conf: Allow copying of shmem defs
  conf: Add support for shmem model
  conf: Add support for shmem role
  qemu: Add support for shmem role
  qemu: Add newer shmem models
  qemu: Add capabilities for ivshmem-{plain,doorbell}
  qemu: Save various defaults for shmem
  qemu: Disable migration for shmem with peer role
  qemu: Make qemuBuildShmemDevStr static
  qemu: Rename qemuBuildShmemDevStr to qemuBuildShmemDevLegacyStr
  qemu: Move common checks outside qemuBuildShmemDevLegacyStr
  qemu: Reorder shmem params nicely
  qemu: Abstract shmem socket path preparation
  qemu: Rename qemuBuildShmemBackendStr to qemuBuildShmemBackendChrStr
  qemu: Support newer ivshmem device variants
  qemu: Add qemuAssignDeviceShmemAlias and use it
  conf: Add some shmem helpers for future use
  qemu: Add support for hot/cold-(un)plug of shmem devices

 docs/formatdomain.html.in                          |  10 +-
 docs/schemas/domaincommon.rng                      |  22 ++
 src/conf/domain_conf.c                             | 154 ++++++++++++-
 src/conf/domain_conf.h                             |  30 +++
 src/libvirt_private.syms                           |   9 +
 src/qemu/qemu_alias.c                              |  32 ++-
 src/qemu/qemu_alias.h                              |   4 +
 src/qemu/qemu_capabilities.c                       |   4 +
 src/qemu/qemu_capabilities.h                       |   2 +
 src/qemu/qemu_command.c                            | 245 ++++++++++++++++----
 src/qemu/qemu_command.h                            |  14 +-
 src/qemu/qemu_domain.c                             |  46 ++++
 src/qemu/qemu_domain.h                             |   3 +
 src/qemu/qemu_driver.c                             |  39 +++-
 src/qemu/qemu_hotplug.c                            | 247 ++++++++++++++++++++-
 src/qemu/qemu_hotplug.h                            |   6 +
 src/qemu/qemu_migration.c                          |  13 ++
 .../caps_2.6.0-gicv2.aarch64.xml                   |   2 +
 .../caps_2.6.0-gicv3.aarch64.xml                   |   2 +
 tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml  |   2 +
 tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml   |   2 +
 tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml   |   2 +
 tests/qemuhotplugtest.c                            |  23 +-
 .../qemuhotplug-ivshmem-doorbell-detach.xml        |   7 +
 .../qemuhotplug-ivshmem-doorbell.xml               |   4 +
 .../qemuhotplug-ivshmem-plain-detach.xml           |   6 +
 .../qemuhotplug-ivshmem-plain.xml                  |   3 +
 ...muhotplug-base-live+ivshmem-doorbell-detach.xml |   1 +
 .../qemuhotplug-base-live+ivshmem-doorbell.xml     |  65 ++++++
 .../qemuhotplug-base-live+ivshmem-plain-detach.xml |   1 +
 .../qemuhotplug-base-live+ivshmem-plain.xml        |  58 +++++
 .../qemuxml2argv-shmem-plain-doorbell.args         |  46 ++++
 ...m.xml => qemuxml2argv-shmem-plain-doorbell.xml} |  15 +-
 tests/qemuxml2argvdata/qemuxml2argv-shmem.args     |  16 +-
 tests/qemuxml2argvdata/qemuxml2argv-shmem.xml      |   6 +-
 tests/qemuxml2argvtest.c                           |   3 +
 ...xml => qemuxml2xmlout-shmem-plain-doorbell.xml} |  24 +-
 tests/qemuxml2xmloutdata/qemuxml2xmlout-shmem.xml  |  15 +-
 tests/qemuxml2xmltest.c                            |   2 +
 39 files changed, 1092 insertions(+), 93 deletions(-)
 create mode 100644 tests/qemuhotplugtestdevices/qemuhotplug-ivshmem-doorbell-detach.xml
 create mode 100644 tests/qemuhotplugtestdevices/qemuhotplug-ivshmem-doorbell.xml
 create mode 100644 tests/qemuhotplugtestdevices/qemuhotplug-ivshmem-plain-detach.xml
 create mode 100644 tests/qemuhotplugtestdevices/qemuhotplug-ivshmem-plain.xml
 create mode 120000 tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-doorbell-detach.xml
 create mode 100644 tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-doorbell.xml
 create mode 120000 tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-plain-detach.xml
 create mode 100644 tests/qemuhotplugtestdomains/qemuhotplug-base-live+ivshmem-plain.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-shmem-plain-doorbell.args
 copy tests/qemuxml2argvdata/{qemuxml2argv-shmem.xml => qemuxml2argv-shmem-plain-doorbell.xml} (78%)
 copy tests/qemuxml2xmloutdata/{qemuxml2xmlout-shmem.xml => qemuxml2xmlout-shmem-plain-doorbell.xml} (78%)

--
2.10.0




More information about the libvir-list mailing list