Add support to libvirt for the 'blob' option for virtio video devices in qemu.
Also do a little preparatory refactoring of the video device xml parsing code.

I sent this series out a couple months ago but didn't get any review. Sending
out again after rebasing to current master branch.

changes in v3:
 - rebased to latest master

Changes in v2:
 - Added some basic documentation
 - add a qemu capability
 - Make sure that the /dev/udmabuf device is accessible to qemu (cgroups, etc)

Jonathon Jongsma (6):
  conf: Refactor video model parsing
  conf: switch to virXMLProp* functions
  conf: use enum variable for video type
  conf: add support for 'blob' in virtio video device
  qemu: Add capability for virtio-gpu.blob
  qemu: Implement 'blob' support for virtio gpu

 docs/formatdomain.rst                         |   6 +
 src/conf/domain_conf.c                        | 133 +++++++++---------
 src/conf/domain_conf.h                        |   3 +-
 src/conf/domain_validate.c                    |  13 +-
 src/conf/schemas/domaincommon.rng             |   5 +
 src/libxl/libxl_conf.c                        |  10 ++
 src/libxl/libxl_domain.c                      |  11 ++
 src/qemu/qemu_capabilities.c                  |   2 +
 src/qemu/qemu_capabilities.h                  |   1 +
 src/qemu/qemu_cgroup.c                        |  22 ++-
 src/qemu/qemu_command.c                       |   3 +
 src/qemu/qemu_domain.h                        |   1 +
 src/qemu/qemu_monitor_json.c                  |  16 ++-
 src/qemu/qemu_namespace.c                     |  22 +++
 src/qemu/qemu_process.c                       |   7 +
 src/qemu/qemu_validate.c                      |   9 ++
 .../caps_6.1.0.x86_64.xml                     |   1 +
 .../caps_6.2.0.aarch64.xml                    |   1 +
 .../qemucapabilitiesdata/caps_6.2.0.ppc64.xml |   1 +
 .../caps_6.2.0.x86_64.xml                     |   1 +
 .../caps_7.0.0.aarch64.xml                    |   1 +
 .../qemucapabilitiesdata/caps_7.0.0.ppc64.xml |   1 +
 .../caps_7.0.0.x86_64.xml                     |   1 +
 .../caps_7.1.0.x86_64.xml                     |   1 +
 .../video-virtio-blob-absent.args             |  34 +++++
 .../video-virtio-blob-absent.xml              |  33 +++++
 .../video-virtio-blob-off.args                |  34 +++++
 .../video-virtio-blob-off.xml                 |  33 +++++
 .../video-virtio-blob-on.args                 |  34 +++++
 .../qemuxml2argvdata/video-virtio-blob-on.xml |  33 +++++
 .../video-virtio-vga-blob-on.args             |  34 +++++
 .../video-virtio-vga-blob-on.xml              |  33 +++++
 tests/qemuxml2argvtest.c                      |  12 ++
 .../video-virtio-blob-absent.xml              |  41 ++++++
 .../video-virtio-blob-off.xml                 |  41 ++++++
 .../video-virtio-blob-on.xml                  |  41 ++++++
 .../video-virtio-vga-blob-on.xml              |  41 ++++++
 tests/qemuxml2xmltest.c                       |  12 ++
 38 files changed, 647 insertions(+), 81 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/video-virtio-blob-absent.args
 create mode 100644 tests/qemuxml2argvdata/video-virtio-blob-absent.xml
 create mode 100644 tests/qemuxml2argvdata/video-virtio-blob-off.args
 create mode 100644 tests/qemuxml2argvdata/video-virtio-blob-off.xml
 create mode 100644 tests/qemuxml2argvdata/video-virtio-blob-on.args
 create mode 100644 tests/qemuxml2argvdata/video-virtio-blob-on.xml
 create mode 100644 tests/qemuxml2argvdata/video-virtio-vga-blob-on.args
 create mode 100644 tests/qemuxml2argvdata/video-virtio-vga-blob-on.xml
 create mode 100644 tests/qemuxml2xmloutdata/video-virtio-blob-absent.xml
 create mode 100644 tests/qemuxml2xmloutdata/video-virtio-blob-off.xml
 create mode 100644 tests/qemuxml2xmloutdata/video-virtio-blob-on.xml
 create mode 100644 tests/qemuxml2xmloutdata/video-virtio-vga-blob-on.xml

-- 
2.35.1


Reply via email to