On Tue, May 10, 2022 at 11:24:31 -0500, Jonathon Jongsma wrote: > This can improve performance for some guests since it reduces copying of > display data between host and guest. Requires udmabuf on the host. > > Signed-off-by: Jonathon Jongsma <jjongsma@xxxxxxxxxx> > --- > src/qemu/qemu_cgroup.c | 22 ++++++---- > src/qemu/qemu_command.c | 3 ++ > src/qemu/qemu_domain.h | 1 + > src/qemu/qemu_namespace.c | 22 ++++++++++ > src/qemu/qemu_validate.c | 9 ++++ > .../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 ++++++ > 19 files changed, 506 insertions(+), 7 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 [...] > diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c > index 1d6e03490d..b2de8ef44f 100644 > --- a/tests/qemuxml2argvtest.c > +++ b/tests/qemuxml2argvtest.c > @@ -2437,6 +2437,18 @@ mymain(void) > DO_TEST("video-virtio-vga", > QEMU_CAPS_DEVICE_VIRTIO_GPU, > QEMU_CAPS_DEVICE_VIRTIO_VGA); > + DO_TEST("video-virtio-blob-on", > + QEMU_CAPS_DEVICE_VIRTIO_GPU, > + QEMU_CAPS_VIRTIO_GPU_BLOB); > + DO_TEST("video-virtio-vga-blob-on", > + QEMU_CAPS_DEVICE_VIRTIO_GPU, > + QEMU_CAPS_DEVICE_VIRTIO_VGA, > + QEMU_CAPS_VIRTIO_GPU_BLOB); > + DO_TEST("video-virtio-blob-off", > + QEMU_CAPS_DEVICE_VIRTIO_GPU, > + QEMU_CAPS_VIRTIO_GPU_BLOB); > + DO_TEST("video-virtio-blob-absent", > + QEMU_CAPS_DEVICE_VIRTIO_GPU); > DO_TEST_CAPS_LATEST("video-virtio-vga-gpu-gl"); > DO_TEST_CAPS_LATEST("video-bochs-display-device"); > DO_TEST_CAPS_LATEST("video-ramfb-display-device"); [...] > diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c > index 518842112e..3d31a1480f 100644 > --- a/tests/qemuxml2xmltest.c > +++ b/tests/qemuxml2xmltest.c > @@ -1278,6 +1278,18 @@ mymain(void) > QEMU_CAPS_DEVICE_VIRTIO_GPU_CCW); > DO_TEST("video-none-device", QEMU_CAPS_VNC); > DO_TEST_CAPS_LATEST("video-virtio-vga-gpu-gl"); > + DO_TEST("video-virtio-blob-on", > + QEMU_CAPS_DEVICE_VIRTIO_GPU, > + QEMU_CAPS_VIRTIO_GPU_BLOB); > + DO_TEST("video-virtio-vga-blob-on", > + QEMU_CAPS_DEVICE_VIRTIO_GPU, > + QEMU_CAPS_DEVICE_VIRTIO_VGA, > + QEMU_CAPS_VIRTIO_GPU_BLOB); > + DO_TEST("video-virtio-blob-off", > + QEMU_CAPS_DEVICE_VIRTIO_GPU, > + QEMU_CAPS_VIRTIO_GPU_BLOB); > + DO_TEST("video-virtio-blob-absent", > + QEMU_CAPS_DEVICE_VIRTIO_GPU); Please make sure to preferrably use DO_TEST_CAPS_LATEST or DO_TEST_CAPS_VER for positive test cases, unless there's a very specific need to test with a certain flag combination. I can have a closer look at this series later once I finish the other stuff I planned to review.