Here is the first part of my virtio-sound patches. Most of them are a preparation to make migration work. Patch 10/11 enables migration.
The second part isn't finished yet and will have to do with virtio-sound jack and channel maps configuration and migration. Patch 01/11 "hw/audio/virtio-sound: return correct command response size", patch 02/11 "hw/audio/virtio-sound: fix segmentation fault in tx/rx xfer handler" and patch 05/11 "hw/audio/virtio-sound: free all stream buffers on reset" are candidates for stable-8.2. Patch 05/11 either needs patches 03/11 and 04/11 or has to be rewritten for stable-8.2. v2: The patches were reordered to facilitate the backport of 3 patches to QEMU stable-8.2. Patch 02/11 "fix segmentation fault in tx/rx xfer handler" has been completely rewritten. Patch 04/11 "hw/audio/virtio-sound: allocate an array of streams" has been renamed. The subject and the commit message describe the patch better. Patch 05/11 "hw/audio/virtio-sound: free all stream buffers on reset" is an additional patch. Patch 07/11 "hw/audio/virtio-sound: add stream state variable" resets the state variable on reset. Once a stream has been opened, it will only be closed after a reset or when QEMU shuts down. Patch 10/11 "add missing vmstate fields" resets the inuse variables on reset. Volker Rümelin (11): hw/audio/virtio-sound: return correct command response size hw/audio/virtio-sound: fix segmentation fault in tx/rx xfer handler hw/audio/virtio-sound: remove command and stream mutexes hw/audio/virtio-sound: allocate an array of streams hw/audio/virtio-sound: free all stream buffers on reset hw/audio/virtio-sound: split out virtio_snd_pcm_start_stop() hw/audio/virtio-sound: add stream state variable hw/audio/virtio-sound: introduce virtio_snd_pcm_open() hw/audio/virtio-sound: introduce virtio_snd_set_active() hw/audio/virtio-sound: add missing vmstate fields hw/audio/virtio-sound: add placeholder for buffer write position hw/audio/trace-events | 3 +- hw/audio/virtio-snd.c | 776 ++++++++++++++++++---------------- include/hw/audio/virtio-snd.h | 29 +- 3 files changed, 427 insertions(+), 381 deletions(-) -- 2.35.3