[Libguestfs] [v2v PATCH 1/4] output/create_libvirt_xml: wire up the QEMU guest agent

Laszlo Ersek lersek at redhat.com
Wed Jun 8 14:42:25 UTC 2022


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 at redhat.com>
R: Amit Shah <amit at 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


More information about the Libguestfs mailing list