All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Mikhalitsyn <alexander@mihalicyn.com>
To: qemu-devel@nongnu.org
Cc: "Manos Pitsidianakis" <manos.pitsidianakis@linaro.org>,
	"Volker Rümelin" <vr_qemu@t-online.de>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	"Daniel P . Berrangé" <berrange@redhat.com>,
	"Alexander Mikhalitsyn" <alexander@mihalicyn.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Stéphane Graber" <stgraber@stgraber.org>,
	"Alexander Mikhalitsyn" <aleksandr.mikhalitsyn@futurfusion.io>
Subject: [PATCH v5 00/10] hw/audio/virtio-sound: basic migration support
Date: Mon,  3 Aug 2026 10:11:49 +0200	[thread overview]
Message-ID: <20260803081159.91981-1-alexander@mihalicyn.com> (raw)

From: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@futurfusion.io>

Dear friends,

This patchset is aimed to support virtio-sound live migration and based on
pre-existing Volker Rümelin's patches from qemu-devel lists [1]. I tried
to ask (https://lore.kernel.org/qemu-devel/9d7ea128c711c201688a4716f53b8a335fc53569.camel@mihalicyn.com/)
if Volker is going to continue his work on this, but received no reply so I
just decided to go forward: take his patches, rebase and resend. Of course,
I kept all authorship/tags so I hope that it is fine.

Testing.

I manually validated this with Ubuntu 24.04 Desktop VM and found no issues.
Also, it was validated with CI (https://gitlab.com/mihalicyn/qemu/-/pipelines/2626702088).

Original patchset:
https://lore.kernel.org/qemu-devel/a289a081-9a61-4bcb-b693-bf6cd7768c0e@t-online.de [1]

Git tree:
https://gitlab.com/mihalicyn/qemu/-/commits/virtio-sound-migration

Changelog for version 5:
- rebased
- added RWB tags

Changelog for version 4:
- addressed review feedback from Marc-André Lureau
- and from Manos Pitsidianakis
*there is a detailed changelog under each commit message*

Changelog for version 3:
- addressed review feedback from Marc-André Lureau:
	- drop VirtIOSoundPCMStream's id field (unused)
	- resurrected error_report(..) in virtio_snd_pcm_start_stop()
	- fixes in "hw/audio/virtio-sound: add stream state variable"
	  [ please, look in commit message for details ]
	- added "hw/audio/virtio-sound: remove channel positions field
	  from VirtIOSoundPCMStream"
	- fixes in "hw/audio/virtio-sound: add missing vmstate fields"
	  [ details in commit message ]

Changelog for version 2:
- no code changes (only commit messages)
  followed suggestions from Daniel P. Berrangé (thanks, Daniel!)
  https://lore.kernel.org/qemu-devel/ajzoxZr4g0Xsr_4p@redhat.com/
  and added some extra details about what I did with the original
  patches during rebase (for some of them it was simpler and less error
  prone to just drop changes and reimplement them by following the idea
  of the patch, cause base code has changed significantly).

Changelog relative to the original Volker Rümelin's submission:
- rebased:
	- "hw/audio/virtio-sound: return correct command response size"
		was dropped as it was already merged
	- "hw/audio/virtio-sound: fix segmentation fault in tx/rx xfer handler"
		was dropped as it seems to be replaced with another fix
		https://github.com/qemu/qemu/commit/731655f87f319fd06f27282c6cafbc2467ac8045
	- I had to drop all pre-existing Reviewed-by tags cause it was 2 years since
	  this patchset was sent and reviewed and I did a quite significant code changes
	  during rebase

Kind regards,
Alex

Alexander Mikhalitsyn (2):
  hw/audio/virtio-sound: remove channel positions field from
    VirtIOSoundPCMStream
  hw/audio/virtio-sound: drop unused struct
    VirtIOSoundPCMStream.flushing field

Volker Rümelin (8):
  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-snd.c         | 696 ++++++++++++++++++++--------------
 include/hw/audio/virtio-snd.h |  26 +-
 2 files changed, 414 insertions(+), 308 deletions(-)

-- 
2.47.3



             reply	other threads:[~2026-08-03  8:13 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-03  8:11 Alexander Mikhalitsyn [this message]
2026-08-03  8:11 ` [PATCH v5 01/10] hw/audio/virtio-sound: remove channel positions field from VirtIOSoundPCMStream Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 02/10] hw/audio/virtio-sound: drop unused struct VirtIOSoundPCMStream.flushing field Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 03/10] hw/audio/virtio-sound: remove command and stream mutexes Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 04/10] hw/audio/virtio-sound: allocate an array of streams Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 05/10] hw/audio/virtio-sound: free all stream buffers on reset Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 06/10] hw/audio/virtio-sound: split out virtio_snd_pcm_start_stop() Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 07/10] hw/audio/virtio-sound: add stream state variable Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 08/10] hw/audio/virtio-sound: introduce virtio_snd_pcm_open() Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 09/10] hw/audio/virtio-sound: introduce virtio_snd_set_active() Alexander Mikhalitsyn
2026-08-03  8:11 ` [PATCH v5 10/10] hw/audio/virtio-sound: add missing vmstate fields Alexander Mikhalitsyn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260803081159.91981-1-alexander@mihalicyn.com \
    --to=alexander@mihalicyn.com \
    --cc=aleksandr.mikhalitsyn@futurfusion.io \
    --cc=berrange@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=manos.pitsidianakis@linaro.org \
    --cc=marcandre.lureau@redhat.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stgraber@stgraber.org \
    --cc=vr_qemu@t-online.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.