On 12/13/21 19:53, Daniel P. Berrangé wrote:
Adding vhost-user backends and helper processes means one of two things:
either you are not going to support hotplug, or you are going to redo
libvirtd with a QMP-based RPC.
If it were possible to keep auto-spawning of helpers at the high level
that feels cleaner, so that the low level only has to worry about a
single way of doing things. If that is too hard for hotplug though,
so be it, leave auto-spawning in the low level.
OTOH, autospawning in the low-level saves hotplugging but it kills
sandboxing; the seccomp filter prohibits forking.
The libvirt model is the only good one once you care about separation of
privilege. The idea of moving large parts of libvirt's domain driver
into a new QEMU-level binary was floated around in the past by Andrea
Bolognani, and I don't dislike it; but I don't believe anybody will have
time to actually realize it, much less to bring it to feature parity.
Paolo