> Ji, Ji,
> > On 03/21/2013 05:35 PM, Alon Levy wrote: > > The target has not seen the guest_connected event via > > spice_chr_guest_open or spice_chr_write, and so spice server > > wrongly > > assumes there is no agent active, while the client continues to > > send > > motion events only by the agent channel, which the server ignores. > > The > > net effect is that the mouse is static in the guest. > > > > By registering the interface on post load spice server will pass on > > the > > agent messages fixing the mouse behavior after migration. > > > > Note that qemu_be_is_fe_connected is called when the vm is already > > running, to avoid any possible order of vmstate loading issue, i.e. > > device loading after chardev post_load being called back. > > This seems needlessly complicated, I agree you should wait with > calling qemu_be_is_fe_connected till the vm is running, but why not > simply use qemu_add_vm_change_state_handler for that, and in the > handler check for state == RUN_STATE_RUNNING ? If I do that I should register it on post load and unregister it after it's done, the code wouldn't be that much simpler but it does make the 1 ns timer go away, so I agree it looks better. > > Regards, > > Hans >