[Spice-devel] [PATCH qemu-kvm-rhel6] Don't crash (on an assert) when the agent sends multiple messages
Alon Levy
alevy at redhat.com
Wed Oct 13 01:41:54 PDT 2010
ack
----- "Hans de Goede" <hdegoede at redhat.com> wrote:
> Don't crash (on an assert) when the agent sends multiple messages
> in quick succession. The solution was taken from the current
> qemu-spice
> code.
> ---
> hw/spice-vmc.c | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/hw/spice-vmc.c b/hw/spice-vmc.c
> index 9a20952..8f1417b 100644
> --- a/hw/spice-vmc.c
> +++ b/hw/spice-vmc.c
> @@ -120,6 +120,8 @@ static int spice_vmc_interface_read(
> assert(svc->datalen >= 0);
> if (svc->datalen == 0) {
> svc->datapos = NULL;
> + virtio_serial_throttle_port(&svc->vserport, false);
> + // ^^^ !!! may call vmc_have_data, so don't touch svc
> after it!
> }
> }
> return bytes;
> @@ -213,6 +215,7 @@ static void spice_vmc_have_data(
> svc->datapos = (uint8_t*)buf;
> svc->datalen = len;
> dprintf(svc, 2, "%s: %p %d\n", __func__, svc->datapos,
> svc->datalen);
> + virtio_serial_throttle_port(&svc->vserport, true);
> if (svc->plug) {
> svc->plug->wakeup(svc->plug);
> }
> --
> 1.7.3.1
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list