[Spice-devel] [Qemu-devel] [PATCH] qxl: send interrupt after migration in case ram->int_pending != 0, RHBZ #732949

Gerd Hoffmann kraxel at redhat.com
Wed Aug 31 03:23:52 PDT 2011


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



More information about the Spice-devel mailing list