[Spice-devel] [PATCH spice] sound: do not modify client state on migration

Marc-André Lureau marcandre.lureau at gmail.com
Fri Apr 24 05:05:00 PDT 2015


During migration, a volume jump is observed by the client. This is due
to qemu setting up destination server with default sound state, and the
server sending it after the client is connected. The volume is later
restored after migration is finished so there is no need to send this
default state values on connection.

Tested with both AC97 & HDA devices.

Fixes:
https://bugzilla.redhat.com/show_bug.cgi?id=1012868
---
 server/snd_worker.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/server/snd_worker.c b/server/snd_worker.c
index ed11af3..46dd767 100644
--- a/server/snd_worker.c
+++ b/server/snd_worker.c
@@ -1232,7 +1232,10 @@ static void snd_set_playback_peer(RedChannel *channel, RedClient *client, RedsSt
         }
     }
 
-    on_new_playback_channel(worker);
+    if (!red_client_during_migrate_at_target(client)) {
+        on_new_playback_channel(worker);
+    }
+
     if (worker->active) {
         spice_server_playback_start(st->sin);
     }
-- 
2.1.0



More information about the Spice-devel mailing list