On 06/07/22 14:43, Richard W.M. Jones wrote:
The patch looks OK, but qemu-ga supports vsock (-m listen-vsock), so wouldn't it be easier to use that? I thought that virtio-serial was unmaintained these days and so vsock would be preferred.
I've not heard of qga using vsock. While that doesn't make it impossible (obviously), the libvirt mechanism for setting up a QGA connection <https://libvirt.org/formatdomain.html#channel> seems tied to virtio-serial, both in practice and per the documentation. Furthermore, even on Fedora 35, the "/usr/lib/systemd/system/qemu-guest-agent.service" file contains: [Unit] Description=QEMU Guest Agent BindsTo=dev-virtio\x2dports-org.qemu.guest_agent.0.device After=dev-virtio\x2dports-org.qemu.guest_agent.0.device IgnoreOnIsolate=True [Service] UMask=0077 EnvironmentFile=/etc/sysconfig/qemu-ga ExecStart=/usr/bin/qemu-ga \ --method=virtio-serial \ --path=/dev/virtio-ports/org.qemu.guest_agent.0 \ --blacklist=${BLACKLIST_RPC} \ -F${FSFREEZE_HOOK_PATHNAME} Restart=always RestartSec=0 [Install] WantedBy=dev-virtio\x2dports-org.qemu.guest_agent.0.device So its startup is more or less basically tied to / triggered by the virtio-serial port named "org.qemu.guest_agent.0". I've not heard of an OS wiring up the qga service through vsock. virtio-serial does not look unmaintained (in QEMU anyways), the MAINTAINERS file @ 6d940eff4734 says: virtio-serial M: Laurent Vivier <lvivier@redhat.com> R: Amit Shah <amit@kernel.org> S: Supported F: hw/char/virtio-serial-bus.c F: hw/char/virtio-console.c F: include/hw/virtio/virtio-serial.h F: tests/qtest/virtio-serial-test.c "S: Supported" --> "Someone is actually paid to look after this." Thanks Laszlo