Red Hat Bugzilla – Bug 737921
Spice password on migration target expires before Spice client is connected
Last modified: 2013-01-09 19:18:53 EST
Reproduced this issue with the following packages: kernel-2.6.32-131.0.15.el6.x86_64 qemu-kvm-0.12.1.2-2.160.el6.x86_64 spice-server-0.8.0-1.el6.x86_64 spice-client-0.8.2-3.el6.x86_64 Steps: 1.Boot a guest in the source host with "-spice port=5930,password=redhat -vga qxl -global qxl-vga.vram_size=33554432" 2.Connect the spice session: spicec -h $source_host_ip -p 5930 -w redhat 3.Boot the guest in the destination host with the same command line with listening mode "-incoming tcp:0:5800" 4.In source host: (qemu)__com.redhat_spice_migrate_info $host_ip 5930 5.In destination host: (qemu)expire_password spice +10 6.In the source host: (qemu)migrate -d tcp:$destination_host_ip:5800 (If migration will take 10 seconds for example, then do step 5 on 4 or 5 seconds later after do step 4. To make sure the password expired during migration) Result: Spice windows closed during migration. And in the destination host,there's some qemu logs as below: reds_handle_ticket: Ticketing is enabled, but no password is set. please set a ticket first spice_server_add_interface: SPICE_INTERFACE_TABLET Verified with the same steps with the following packages: kernel-2.6.32-209.el6.x86_64 qemu-kvm-0.12.1.2-2.196.el6.x86_64 spice-server-0.8.2-4.el6.x86_64 spice-client-0.8.2-7.el6.x86_64 Results: (1)During migration, the spice window does not close though the password has expired. (2)There's spice notification at the beginning and ending of migration: (qemu) migrate -d tcp:10.66.9.184:5800 spice_server_migrate_start: (qemu) handle_dev_input: stop spice_server_migrate_end: completed=1 reds_mig_finished So, this bug is fixed.
Moving to ON_QA because Errata Tool did not do it
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: Cause Spice client connected to the migration target only after migration completed. However, the ticket on the target was set before migration started. Consequence If (migration_time > ticket_expiration_time) - spice client failed to connect to the target and aborted. Fix spice server informs spice client to connect to the target before migration starts, upon the client_migrate_info command. client_migrate_info was turned to an async command. spice server waits till the client performed the initial connection (or a timeout), and then calls the completion callback of client_migrate_info. Result Spice client is connected to the migration target after migration.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHSA-2011-1531.html