qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC] hw/qxl: inject interrupts in any state


From: Gerd Hoffmann
Subject: Re: [Qemu-devel] [RFC] hw/qxl: inject interrupts in any state
Date: Thu, 01 Nov 2012 10:19:43 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.8) Gecko/20121012 Thunderbird/10.0.8

On 10/31/12 13:53, Alon Levy wrote:
> I cannot find a reason we asserted that injecting interrupts happen only
> when the vm is running. This is right now the cause of spice crashing
> due to the new interface_client_set_capabilities being called when the
> vm is stopped, this happens if a user stops the vm or the vm reboots and
> a spice connection is dropped / created meanwhile.
> 
> Sending as RFC since I'm not sure what the original reason for the
> assert is, git history is no help, it's in the first commit.

The problem is migration.  qxl_send_events modifies guest state, and
there are phases during migration where modifying guest state is a
no-go.  You'll loose events, either because the guest state update on
the source side came to late so it isn't send over or because the update
on the target side came to early so loadvm will overwrite it.

Disallowing events when the vm is stopped catches more cases than
needed, we could change it.  But that wouldn't fix the bug at hand, it
would only make it harder to trigger.

IMO spice-server must not call interface_client_set_capabilities when
the vm is not running.  After all we notify spice-server about the vm
stop/start events for a reason ...

cheers,
  Gerd




reply via email to

[Prev in Thread] Current Thread [Next in Thread]