- Backend: rust-vmm/vhost-device-sound
- Guest: ARM64 Linux with virtio_snd driver
RUST_LOG=debug vhost-device-sound --socket /tmp/snd.sock --backend alsa
1、Guest kernel
[ 4.510310] virtio_snd virtio1: control message (0x00000100) timeout
[ 4.512538] virtio_snd virtio1: probe with driver virtio_snd failed with error -110
[ 34.574701] No soundcards found.
2、Backend reads virtqueue and sees avail.idx=0 (no requests)
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] process_control: requests count = 0
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] process_control: EMPTY! avail_idx=Ok(0), next_avail=0 (device's processed index)
[2024-02-27T17:32:14Z DEBUG vhost::vhost_user::backend_req_handler] vhost-user: request Ok(SET_VRING_ENABLE)
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] Backend handle_event: device_event=1, kick_fd=14, evset=IN, thread_id=0, queues_per_thread=[15]
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] handle_event: device_event=1, queue_indexes=[Control, Event, Tx, Rx]
3、Same vhost-user backend code works for gpu/gpio/can/spi but fails for sound
RUST_LOG=debug vhost-device-sound --socket /tmp/snd.sock --backend alsa
1、Guest kernel
[ 4.510310] virtio_snd virtio1: control message (0x00000100) timeout
[ 4.512538] virtio_snd virtio1: probe with driver virtio_snd failed with error -110
[ 34.574701] No soundcards found.
2、Backend reads virtqueue and sees avail.idx=0 (no requests)
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] process_control: requests count = 0
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] process_control: EMPTY! avail_idx=Ok(0), next_avail=0 (device's processed index)
[2024-02-27T17:32:14Z DEBUG vhost::vhost_user::backend_req_handler] vhost-user: request Ok(SET_VRING_ENABLE)
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] Backend handle_event: device_event=1, kick_fd=14, evset=IN, thread_id=0, queues_per_thread=[15]
[2024-02-27T17:32:14Z DEBUG vhost_device_sound::device] handle_event: device_event=1, queue_indexes=[Control, Event, Tx, Rx]
3、Same vhost-user backend code works for gpu/gpio/can/spi but fails for sound