From: Benjamin Berg <benjamin.b...@intel.com> With these changes, both virtio-fs and virtio-snd seem to work fine. The feature to query the number of vqs is not really needed, but I already had the code.
You can for example boot a machine that has both by executing something like the following: $ virtiofsd --sandbox none --socket-path=/tmp/vfsd.sock \ --shared-dir / --announce-submounts \ --tag vfs0 $ vhost-device-sound --socket /tmp/vsnd.sock --backend pipewire And then simply launching a UML VM directly from / $ ./linux mem=256M init=/bin/sh \ virtio_uml.device=/tmp/vfsd.sock:26 \ virtio_uml.device=/tmp/vsnd.sock:25 \ root=vfs0 rootfstype=virtiofs If you want to do a quick sound check, you could e.g. run the following commands. The mount just avoids alsa configuration from the host to be picked up, which might have configuration to use pipewire by default. # mount -t tmpfs none /etc # arecord | aplay For me, this works fine on F40 (virtiofsd is installed in /usr/libexec) Benjamin Benjamin Berg (4): um: virtio_uml: send SET_MEM_TABLE message with the exact size um: virtio_uml: use smaller virtqueue sizes for VIRTIO_ID_SOUND um: virtio_uml: fix call_fd IRQ allocation um: virtio_uml: query the number of vqs if supported arch/um/drivers/vhost_user.h | 4 ++- arch/um/drivers/virtio_uml.c | 53 ++++++++++++++++++++++++++++++------ 2 files changed, 48 insertions(+), 9 deletions(-) -- 2.47.0