On 01/10/2011 10:38 AM, Cole Robinson wrote:
> After the remote driver runs an event callback, it unconditionally disables 
> the
> loop timer, thinking it just flushed every queued event. This doesn't work
> correctly though if an event is queued while a callback is running.
> 
> The events actually aren't being lost, it's just that the event loop didn't
> think there was anything that needed to be dispatched. So all those 'lost
> events' should actually get re-triggered if you manually kick the loop by
> generating a new event (like creating a new guest).
> 
> The solution is to disable the dispatch timer _before_ we invoke any event
> callbacks. Events queued while a callback is running will properly reenable 
> the
> timer.

ACK.  Matches the order in src/qemu/qemu_driver.c:qemuDomainEventFlush.

-- 
Eric Blake   ebl...@redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to