On 08/31/11 10:20, Yonit Halperin wrote:
if qxl_send_events was called from spice server context, and then
migration had completed before a call to pipe_read, the target
guest qxl driver didn't get the interrupt. In addition,
qxl_send_events ignored further interrupts of the same kind, since
ram->int_pending was set. As a result, the guest driver was stacked
or very slow (when the waiting for the interrupt was with timeout).

-    if (!running&&  qxl->mode == QXL_MODE_NATIVE) {
+    if (running) {
+        if (qxl->ram->int_pending) {
+            /*
+             * if qxl_send_events was called from spice server context before
+             * migration ended, qxl_set_irq for these events might not have 
been called
+             */
+            qxl_set_irq(qxl);
+        }

You can call qxl_set_irq unconditionally,
it checks for int_pending anyway.

cheers,
  Gerd

_______________________________________________
Spice-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/spice-devel

Reply via email to