From: "Dr. David Alan Gilbert" <dgilb...@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.
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. Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> Reviewed-by: Daniel P. Berrangé <berra...@redhat.com> Tested-by: Daniel P. Berrangé <berra...@redhat.com> Message-Id: <20210809170956.78536-1-dgilb...@redhat.com> Signed-off-by: Gerd Hoffmann <kra...@redhat.com> (cherry picked from commit da77adbaf619c4d170cb42d769145ad1803fbad9) Signed-off-by: Michael Roth <michael.r...@amd.com> --- audio/audio.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/audio/audio.c b/audio/audio.c index 534278edfe..fa724ea8e0 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -1621,10 +1621,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.25.1