[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCHv3] qxl: add QXL_IO_FLUSH_{SURFACES, RELEASE} for
From: |
Alon Levy |
Subject: |
Re: [Qemu-devel] [PATCHv3] qxl: add QXL_IO_FLUSH_{SURFACES, RELEASE} for guest S3&S4 support |
Date: |
Wed, 29 Jun 2011 16:27:47 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Wed, Jun 29, 2011 at 03:06:33PM +0200, Gerd Hoffmann wrote:
> Hi,
>
> >+ case QXL_IO_FLUSH_SURFACES:
> >+ dprint(d, 1, "QXL_IO_FLUSH_SURFACES (%d) entry (%s, s#=%d,
> >res#=%d)\n",
> >+ val, qxl_mode_to_string(d->mode), d->guest_surfaces.count,
> >+ d->num_free_res);
> >+ qemu_spice_stop(&d->ssd);
> >+ qemu_spice_start(&d->ssd);
> >+ dprint(d, 1, "QXL_IO_FLUSH_SURFACES exit (%s, s#=%d, res#=%d,%p)\n",
> >+ qxl_mode_to_string(d->mode), d->guest_surfaces.count,
> >+ d->num_free_res, d->last_release);
> >+ break;
>
> This should be async as we'll go sleep and wait for the spice server
> thread finish in qemu_spice_stop().
Yeah, I meant to do that, forgot, thanks for catching it.
>
> >+ case QXL_IO_FLUSH_RELEASE: {
> >+ QXLReleaseRing *ring =&d->ram->release_ring;
> >+ if (ring->prod - ring->cons + 1 == ring->num_items) {
> >+ // TODO - "return" a value to the guest and let it loop?
> ^^^^
> Hmm.
So the story goes: I wrote this, but didn't actually see this happen in
practice,
particularily since the driver empties the release ring. The simplest would be
to
replace it with some fprintf(stderr)
>
> cheers,
> Gerd
- Re: [Qemu-devel] [PATCHv3] qxl: update and add debug prints, (continued)
[Qemu-devel] [PATCHv3] qxl: add dev id to guest prints, Alon Levy, 2011/06/29
[Qemu-devel] [PATCHv3] qxl: add io_port_to_string, Alon Levy, 2011/06/29
[Qemu-devel] [PATCHv3] qxl: update revision to QXL_REVISION_STABLE_V10, Alon Levy, 2011/06/29
[Qemu-devel] [PATCHv3] qxl: add QXL_IO_FLUSH_{SURFACES, RELEASE} for guest S3&S4 support, Alon Levy, 2011/06/29
Re: [Qemu-devel] [PATCHv3] qxl: add QXL_IO_FLUSH_{SURFACES, RELEASE} for guest S3&S4 support, Alon Levy, 2011/06/29
[Qemu-devel] [PATCHv3] qxl: move to UNDEFINED on DESTROY_ALL_SURFACES{, _ASYNC}, Alon Levy, 2011/06/29
- Re: [Qemu-devel] [PATCHv3] qxl: move to UNDEFINED on DESTROY_ALL_SURFACES{, _ASYNC}, Gerd Hoffmann, 2011/06/29
- Re: [Qemu-devel] [PATCHv3] qxl: move to UNDEFINED on DESTROY_ALL_SURFACES{, _ASYNC}, Alon Levy, 2011/06/29
- Re: [Qemu-devel] [PATCHv3] qxl: move to UNDEFINED on DESTROY_ALL_SURFACES{, _ASYNC}, Gerd Hoffmann, 2011/06/29
- Re: [Qemu-devel] [PATCHv3] qxl: move to UNDEFINED on DESTROY_ALL_SURFACES{, _ASYNC}, Alon Levy, 2011/06/29
- Re: [Qemu-devel] [PATCHv3] qxl: move to UNDEFINED on DESTROY_ALL_SURFACES{, _ASYNC}, Gerd Hoffmann, 2011/06/30
[Qemu-devel] [PATCHv3] qxl: only disallow specific io's in vga mode, Alon Levy, 2011/06/29