From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@redhat.com>, qemu-stable@nongnu.org
Cc: kraxel@redhat.com, "Daniel P. Berrangé" <berrange@redhat.com>,
qemu-devel@nongnu.org, quintela@redhat.com
Subject: Re: [PATCH] audio: Never send migration section
Date: Tue, 10 Aug 2021 11:01:37 +0100 [thread overview]
Message-ID: <YRJOgT08qsnO6PhT@work-vm> (raw)
In-Reply-To: <bedb4670-4e44-2d69-c611-3bf3bdce6587@redhat.com>
* Philippe Mathieu-Daudé (philmd@redhat.com) wrote:
> On 8/9/21 7:12 PM, Daniel P. Berrangé wrote:
> > On Mon, Aug 09, 2021 at 06:09:56PM +0100, Dr. David Alan Gilbert (git) wrote:
> >> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> >>
> >> The audio migration vmstate is empty, and always has been; we can't
> >> just remove it though because an old qemu might send it us.
> >> Changes with -audiodev now mean it's sometimes created when it didn't
> >> used to be, and can confuse migration to old qemu.
>
> Not a 6.1 regression but easy change for rc3 IMO.
>
> >> Change it so that vmstate_audio is never sent; if it's received it
> >> should still be accepted, and old qemu's shouldn't be too upset if it's
> >> missing.
>
> Worth Cc: stable@ maybe?
Hmm yes, cc'd this reply.
Dave
> >> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> >> ---
> >> audio/audio.c | 10 ++++++++++
> >> 1 file changed, 10 insertions(+)
> >
> > Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
> > Tested-by: Daniel P. Berrangé <berrange@redhat.com>
> >
> >
> > For testing I have a VM with -audiodev, but *WITHOUT* any sound
> > frontend devices. Live migrating to a QEMU using QEMU_AUDIO_DRV
> > would previously fail. With this applied it now works, showing
> > that we dont uncessarily send this.
> >
> > I also tested migration to a QEMU with -audiodev, but without
> > this patch, and that still works as before, showing that QEMU
> > is happy if this section is not sent.
> >
> >>
> >> diff --git a/audio/audio.c b/audio/audio.c
> >> index 59453ef856..54a153c0ef 100644
> >> --- a/audio/audio.c
> >> +++ b/audio/audio.c
> >> @@ -1622,10 +1622,20 @@ void audio_cleanup(void)
> >> }
> >> }
> >>
> >> +static bool vmstate_audio_needed(void *opaque)
> >> +{
> >> + /*
> >> + * Never needed, this vmstate only exists in case
> >> + * an old qemu sends it to us.
> >> + */
> >> + return false;
> >> +}
> >> +
> >> static const VMStateDescription vmstate_audio = {
> >> .name = "audio",
> >> .version_id = 1,
> >> .minimum_version_id = 1,
> >> + .needed = vmstate_audio_needed,
> >> .fields = (VMStateField[]) {
> >> VMSTATE_END_OF_LIST()
> >> }
> >> --
> >> 2.31.1
> >>
> >
> > Regards,
> > Daniel
> >
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
next prev parent reply other threads:[~2021-08-10 10:02 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-09 17:09 [PATCH] audio: Never send migration section Dr. David Alan Gilbert (git)
2021-08-09 17:12 ` Daniel P. Berrangé
2021-08-10 4:58 ` Philippe Mathieu-Daudé
2021-08-10 10:01 ` Dr. David Alan Gilbert [this message]
2021-08-10 8:56 ` Gerd Hoffmann
2021-08-10 12:02 ` Juan Quintela
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=YRJOgT08qsnO6PhT@work-vm \
--to=dgilbert@redhat.com \
--cc=berrange@redhat.com \
--cc=kraxel@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@nongnu.org \
--cc=quintela@redhat.com \
/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.