[libvirt] [PATCH v3 00/14] improve graphics listen configuration
Christophe Fergeau
cfergeau at redhat.com
Fri May 13 16:35:52 UTC 2016
Hey,
Something which I forgot to mention/test when going through the first
iteration is virsh domdisplay, it's currently failing with
<graphics type='spice'><listen type='socket' socket='/tmp/foo'/></graphics>
I think something like 'spice+unix:///tmp/foo' is expected. This can be
addressed as a follow-up to this series though.
Christophe
On Thu, May 12, 2016 at 05:15:44PM +0200, Pavel Hrdina wrote:
> This patch series improves the way how different listen types can be specified
> and also introduce a new listen types for graphics devices.
>
> First improvement is to move ports out of graphics element into listen element
> with type address or network. This is a first step to make the code
> listen-driven.
>
> Second step is to create a new listen type socket to improve the current vnc
> configuration and to print only socket path witout any other listen types. With
> the new socket type now we can add support also to spice graphics.
>
> The last improvement is to introduce new listen type none for spice and vnc
> graphics to specify that the spice graphics shouldn't listen anywhere by default.
>
> In case of spice graphics the new listen types socket or none are required to
> start a guest with OpenGL support.
>
> Changes in v3:
> - add listen type none support for vnc
> - fix issues pointed out in v2
>
> Changes in v2:
> - don't remove vnc_auto_unix_socket from qemu.conf
> - add spice_auto_unix_socket
>
> Pavel Hrdina (14):
> graphics: don't parse listens if socket attribute is present
> domain_conf: parse listen attribute while parsing listen elements
> graphics: make address attribute for listen type='address' optional
> domain_conf: cleanup virDomainGraphicsListenDefParseXML
> graphics: move port definition to listen element
> graphics: introduce listen type=socket and use it for VNC
> qemu_capabilites: add QEMU_CAPS_SPICE_UNIX
> qemu_command: refactor spice channel code
> spice: add support for listen type socket
> qemu_process: separate graphics socket and address generation
> tests: cleanup vnc auto socket test
> spice: introduce spice_auto_unix_socket config option
> spice: introduce listen type none
> vnc: add support for listen type none
>
> docs/formatdomain.html.in | 141 +++--
> docs/schemas/domaincommon.rng | 63 +-
> src/conf/domain_conf.c | 637 ++++++++++++++-------
> src/conf/domain_conf.h | 31 +-
> src/libvirt_private.syms | 1 +
> src/libxl/libxl_conf.c | 53 +-
> src/libxl/libxl_domain.c | 17 +-
> src/qemu/libvirtd_qemu.aug | 1 +
> src/qemu/qemu.conf | 17 +-
> src/qemu/qemu_capabilities.c | 2 +
> src/qemu/qemu_capabilities.h | 1 +
> src/qemu/qemu_command.c | 273 +++++----
> src/qemu/qemu_conf.c | 1 +
> src/qemu/qemu_conf.h | 1 +
> src/qemu/qemu_domain.c | 19 +-
> src/qemu/qemu_hotplug.c | 40 +-
> src/qemu/qemu_migration.c | 50 +-
> src/qemu/qemu_parse_command.c | 41 +-
> src/qemu/qemu_process.c | 351 ++++++++----
> src/qemu/test_libvirtd_qemu.aug.in | 1 +
> src/security/virt-aa-helper.c | 15 +-
> src/vbox/vbox_common.c | 30 +-
> src/vbox/vbox_tmpl.c | 34 +-
> src/vbox/vbox_uniformed_api.h | 4 +-
> src/vmx/vmx.c | 54 +-
> src/vz/vz_sdk.c | 30 +-
> src/xenconfig/xen_common.c | 75 ++-
> src/xenconfig/xen_sxpr.c | 71 +--
> src/xenconfig/xen_xl.c | 45 +-
> .../generic-graphics-listen-back-compat-ports.xml | 30 +
> ...generic-graphics-vnc-listen-element-minimal.xml | 2 +-
> ...aphics-vnc-listen-element-with-address-port.xml | 30 +
> ...ric-graphics-vnc-socket-attr-listen-address.xml | 30 +
> ...hics-vnc-socket-attr-listen-socket-mismatch.xml | 30 +
> ...eric-graphics-vnc-socket-attr-listen-socket.xml | 30 +
> .../generic-graphics-listen-back-compat-ports.xml | 30 +
> .../generic-graphics-listen-back-compat.xml | 2 +-
> .../generic-graphics-vnc-listen-attr-only.xml | 2 +-
> ...generic-graphics-vnc-listen-element-minimal.xml | 4 +-
> ...aphics-vnc-listen-element-with-address-port.xml | 30 +
> ...ic-graphics-vnc-listen-element-with-address.xml | 2 +-
> .../generic-graphics-vnc-manual-port.xml | 4 +-
> .../generic-graphics-vnc-minimal.xml | 4 +-
> ...ric-graphics-vnc-socket-attr-listen-address.xml | 30 +
> ...eric-graphics-vnc-socket-attr-listen-socket.xml | 30 +
> .../generic-graphics-vnc-socket-listen.xml | 2 +-
> .../generic-graphics-vnc-socket.xml | 4 +-
> tests/genericxml2xmltest.c | 7 +
> .../qemuargv2xml-graphics-vnc-policy.xml | 2 +-
> .../qemuargv2xml-graphics-vnc-sasl.xml | 2 +-
> .../qemuargv2xml-graphics-vnc-socket.xml | 4 +-
> .../qemuargv2xml-graphics-vnc-tls.xml | 2 +-
> .../qemuargv2xml-graphics-vnc-websocket.xml | 2 +-
> .../qemuargv2xmldata/qemuargv2xml-graphics-vnc.xml | 2 +-
> ...qemuhotplug-console-compat-2+console-virtio.xml | 2 +-
> .../qemuxml2argv-console-compat-2.xml | 2 +-
> ...emuxml2argv-graphics-spice-auto-socket-cfg.args | 20 +
> ...qemuxml2argv-graphics-spice-auto-socket-cfg.xml | 30 +
> .../qemuxml2argv-graphics-spice-auto-socket.args | 20 +
> .../qemuxml2argv-graphics-spice-auto-socket.xml | 30 +
> .../qemuxml2argv-graphics-spice-socket.args | 20 +
> .../qemuxml2argv-graphics-spice-socket.xml | 30 +
> .../qemuxml2argv-graphics-vnc-auto-socket-cfg.args | 22 +
> .../qemuxml2argv-graphics-vnc-auto-socket-cfg.xml | 34 ++
> .../qemuxml2argv-graphics-vnc-auto-socket.args | 20 +
> .../qemuxml2argv-graphics-vnc-auto-socket.xml | 30 +
> .../qemuxml2argv-graphics-vnc-autosocket.args | 22 -
> .../qemuxml2argv-graphics-vnc-autosocket.xml | 34 --
> .../qemuxml2argv-graphics-vnc-socket.args | 4 +-
> .../qemuxml2argv-graphics-vnc-socket.xml | 10 +-
> .../qemuxml2argv-video-virtio-gpu-spice-gl.args | 2 +-
> tests/qemuxml2argvtest.c | 16 +
> .../qemuxml2xmlout-graphics-listen-network.xml | 2 +-
> .../qemuxml2xmlout-graphics-listen-network2.xml | 4 +-
> ...muxml2xmlout-graphics-spice-auto-socket-cfg.xml | 35 ++
> .../qemuxml2xmlout-graphics-spice-auto-socket.xml | 35 ++
> .../qemuxml2xmlout-graphics-spice-compression.xml | 2 +-
> .../qemuxml2xmlout-graphics-spice-qxl-vga.xml | 2 +-
> .../qemuxml2xmlout-graphics-spice-socket.xml | 35 ++
> .../qemuxml2xmlout-graphics-spice-timeout.xml | 4 +-
> .../qemuxml2xmlout-graphics-spice.xml | 2 +-
> ...qemuxml2xmlout-graphics-vnc-auto-socket-cfg.xml | 41 ++
> .../qemuxml2xmlout-graphics-vnc-auto-socket.xml | 35 ++
> .../qemuxml2xmlout-graphics-vnc-autosocket.xml | 39 --
> .../qemuxml2xmlout-graphics-vnc-no-listen-attr.xml | 2 +-
> .../qemuxml2xmlout-graphics-vnc-sasl.xml | 2 +-
> .../qemuxml2xmlout-graphics-vnc-socket.xml | 35 ++
> .../qemuxml2xmlout-graphics-vnc-tls.xml | 2 +-
> .../qemuxml2xmlout-graphics-vnc-websocket.xml | 2 +-
> .../qemuxml2xmlout-graphics-vnc.xml | 2 +-
> .../qemuxml2xmlout-interface-server.xml | 4 +-
> .../qemuxml2xmlout-net-bandwidth.xml | 4 +-
> .../qemuxml2xmlout-net-bandwidth2.xml | 4 +-
> .../qemuxml2xmlout-pci-bridge.xml | 2 +-
> ...emuxml2xmlout-seclabel-dynamic-none-relabel.xml | 2 +-
> .../qemuxml2xmlout-serial-spiceport.xml | 2 +-
> .../qemuxml2xmlout-video-virtio-gpu-spice-gl.xml | 3 +-
> tests/qemuxml2xmltest.c | 19 +-
> tests/sexpr2xmldata/sexpr2xml-curmem.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-empty-kernel.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-force-hpet.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-force-nohpet.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-localtime.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-net-netfront.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-parallel-tcp.xml | 4 +-
> .../sexpr2xml-fv-serial-dev-2-ports.xml | 4 +-
> .../sexpr2xml-fv-serial-dev-2nd-port.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-file.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-null.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-pipe.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-pty.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-stdio.xml | 4 +-
> .../sexpr2xml-fv-serial-tcp-telnet.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-udp.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-serial-unix.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-sound-all.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-sound.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-usbtablet.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-utc.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv-v2.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-fv.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml | 4 +-
> .../sexpr2xml-pv-vfb-new-vncdisplay.xml | 2 +-
> tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml | 2 +-
> .../sexpr2xmldata/sexpr2xml-pv-vfb-type-crash.xml | 4 +-
> tests/sexpr2xmldata/sexpr2xml-vif-rate.xml | 4 +-
> tests/vmx2xmldata/vmx2xml-graphics-vnc.xml | 4 +-
> .../test-disk-positional-parms-full.xml | 2 +-
> .../test-disk-positional-parms-partial.xml | 2 +-
> ...est-fullvirt-direct-kernel-boot-bogus-extra.xml | 2 +-
> .../test-fullvirt-direct-kernel-boot-extra.xml | 2 +-
> .../test-fullvirt-direct-kernel-boot.xml | 2 +-
> tests/xlconfigdata/test-fullvirt-multiusb.xml | 2 +-
> tests/xlconfigdata/test-fullvirt-nohap.xml | 2 +-
> tests/xlconfigdata/test-new-disk.xml | 2 +-
> tests/xlconfigdata/test-rbd-multihost-noauth.xml | 2 +-
> tests/xlconfigdata/test-spice-features.xml | 2 +-
> tests/xlconfigdata/test-spice.xml | 2 +-
> tests/xlconfigdata/test-vif-rate.xml | 2 +-
> tests/xmconfigdata/test-escape-paths.xml | 2 +-
> .../xmconfigdata/test-fullvirt-default-feature.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-force-hpet.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-force-nohpet.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-localtime.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-net-netfront.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-new-cdrom.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-nohap.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-parallel-tcp.xml | 2 +-
> .../test-fullvirt-serial-dev-2-ports.xml | 2 +-
> .../test-fullvirt-serial-dev-2nd-port.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-file.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-null.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-pipe.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-pty.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-stdio.xml | 2 +-
> .../test-fullvirt-serial-tcp-telnet.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-tcp.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-udp.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-serial-unix.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-sound.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-usbmouse.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-usbtablet.xml | 2 +-
> tests/xmconfigdata/test-fullvirt-utc.xml | 2 +-
> tests/xmconfigdata/test-no-source-cdrom.xml | 4 +-
> tests/xmconfigdata/test-paravirt-net-e1000.xml | 2 +-
> tests/xmconfigdata/test-paravirt-net-vifname.xml | 2 +-
> .../test-paravirt-new-pvfb-vncdisplay.xml | 2 +-
> tests/xmconfigdata/test-paravirt-new-pvfb.xml | 2 +-
> tests/xmconfigdata/test-pci-devs.xml | 4 +-
> 172 files changed, 2310 insertions(+), 987 deletions(-)
> create mode 100644 tests/genericxml2xmlindata/generic-graphics-listen-back-compat-ports.xml
> create mode 100644 tests/genericxml2xmlindata/generic-graphics-vnc-listen-element-with-address-port.xml
> create mode 100644 tests/genericxml2xmlindata/generic-graphics-vnc-socket-attr-listen-address.xml
> create mode 100644 tests/genericxml2xmlindata/generic-graphics-vnc-socket-attr-listen-socket-mismatch.xml
> create mode 100644 tests/genericxml2xmlindata/generic-graphics-vnc-socket-attr-listen-socket.xml
> create mode 100644 tests/genericxml2xmloutdata/generic-graphics-listen-back-compat-ports.xml
> create mode 100644 tests/genericxml2xmloutdata/generic-graphics-vnc-listen-element-with-address-port.xml
> create mode 100644 tests/genericxml2xmloutdata/generic-graphics-vnc-socket-attr-listen-address.xml
> create mode 100644 tests/genericxml2xmloutdata/generic-graphics-vnc-socket-attr-listen-socket.xml
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket-cfg.args
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket-cfg.xml
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket.args
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-auto-socket.xml
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-socket.args
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-socket.xml
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket-cfg.args
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket-cfg.xml
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket.args
> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-socket.xml
> delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-autosocket.args
> delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-autosocket.xml
> create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-auto-socket-cfg.xml
> create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-auto-socket.xml
> create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-socket.xml
> create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-auto-socket-cfg.xml
> create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-auto-socket.xml
> delete mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-autosocket.xml
> create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-vnc-socket.xml
>
> --
> 2.8.2
>
> --
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20160513/a05c0106/attachment-0001.sig>
More information about the libvir-list
mailing list