[PATCH v2 00/11] virtio-sound migration part 1

Volker Rümelin posted 11 patches 8 months, 4 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/a289a081-9a61-4bcb-b693-bf6cd7768c0e@t-online.de
Maintainers: Gerd Hoffmann <kraxel@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
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(-)
[PATCH v2 00/11] virtio-sound migration part 1
Posted by Volker Rümelin 8 months, 4 weeks ago
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

Re: [PATCH v2 00/11] virtio-sound migration part 1
Posted by Michael S. Tsirkin 8 months ago
On Sun, Feb 18, 2024 at 09:31:02AM +0100, Volker Rümelin wrote:
> 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.


So I queued patch 1 since that's a bugfix.
Patch 2 can go in after you address Manos's comment.
Rest - after release.


> 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