From: Anthony Liguori <anthony@codemonkey.ws>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PULL] spice: async i/o for qxl
Date: Thu, 04 Aug 2011 17:43:37 -0500 [thread overview]
Message-ID: <4E3B2099.6060906@codemonkey.ws> (raw)
In-Reply-To: <1312367866-27508-1-git-send-email-kraxel@redhat.com>
On 08/03/2011 05:37 AM, Gerd Hoffmann wrote:
> Hi,
>
> This spice/qxl pull fixes (for the most part) a design flaw in the qxl
> device interface.
>
> Some write operations to qxl I/O ports are blocking, i.e. they wait
> for the spice server finish some work, then return to the guest.
> Which adds noticable latencies. This patch series adds non-blocking
> versions of these operations which return without delay, then raise
> a IRQ when complete. The old ops remain functional for backward
> compatibility reasons. A guest driver update is needed to make use
> of the new ops and get rid of the latencies.
>
> The series also adds new ops which ask the spice server to process all
> outstanding rendering commands. This will effectively flush all spice
> server state to qxl device memory and is needed for S3 support.
>
> While being at extending the guest ABI we also add a error IRQ to the
> qxl device. Long-term plan is to convert all guest-triggerable asserts
> in qxl.c into "ignore guest request and raise error IRQ".
>
> All stuff listed above needs a new version of the spice server library,
> thats why a bunch of ifdefs is needed so qxl continues to work with
> older spice versions. The plan is to raise the minimum required spice
> server library when it is in widespread use (in a year or so), then
> kill all the ugly #ifdefs.
>
> Finally we raise the pci revision of the qxl device (with new
> libspice-server) to signal the guest all the stuff listed above is
> available.
Pulled. Thanks.
Regards,
Anthony Liguori
>
> please pull,
> Gerd
>
> The following changes since commit 927d721777e73339f73719f36eaf400ab641366c:
>
> microblaze: Add missing call to qemu_init_vcpu. (2011-07-31 06:40:13 +0200)
>
> are available in the git repository at:
> git://anongit.freedesktop.org/spice/qemu spice.v40
>
> Alon Levy (5):
> qxl: add io_port_to_string
> qxl: make qxl_guest_bug take variable arguments
> qxl: only disallow specific io's in vga mode
> qxl: async io support using new spice api
> qxl: add QXL_IO_FLUSH_{SURFACES,RELEASE} for guest S3&S4 support
>
> Gerd Hoffmann (6):
> spice: add worker wrapper functions.
> spice: add qemu_spice_display_init_common
> spice/qxl: move worker wrappers
> qxl: fix surface tracking& locking
> qxl: error handling fixes and cleanups.
> qxl: bump pci rev
>
> hw/qxl-render.c | 4 +-
> hw/qxl.c | 438 +++++++++++++++++++++++++++++++++++++++++++++-------
> hw/qxl.h | 34 ++++-
> ui/spice-display.c | 93 ++++++++++--
> ui/spice-display.h | 28 ++++
> 5 files changed, 528 insertions(+), 69 deletions(-)
>
>
prev parent reply other threads:[~2011-08-04 22:43 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-03 10:37 [Qemu-devel] [PULL] spice: async i/o for qxl Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 01/11] spice: add worker wrapper functions Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 02/11] spice: add qemu_spice_display_init_common Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 03/11] spice/qxl: move worker wrappers Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 04/11] qxl: fix surface tracking & locking Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 05/11] qxl: add io_port_to_string Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 06/11] qxl: error handling fixes and cleanups Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 07/11] qxl: make qxl_guest_bug take variable arguments Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 08/11] qxl: only disallow specific io's in vga mode Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 09/11] qxl: async io support using new spice api Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 10/11] qxl: add QXL_IO_FLUSH_{SURFACES, RELEASE} for guest S3&S4 support Gerd Hoffmann
2011-08-03 10:37 ` [Qemu-devel] [PATCH 11/11] qxl: bump pci rev Gerd Hoffmann
2011-08-04 22:43 ` Anthony Liguori [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E3B2099.6060906@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).