[Spice-devel] Our current open issues

2011-07-19 Thread John A. Sullivan III
Hello, all. I know I've raised a large number of issues over the last few weeks most of which are still open. I'd like to summarize them here and ask for your direction on how we can further troubleshoot and resolve them, in other words, how can we as integrators rather than programmers help. Th

Re: [Spice-devel] Unfair comparisons with RDP

2011-07-19 Thread John A. Sullivan III
On Mon, 2011-07-04 at 21:07 +0300, Yaniv Kaul wrote: > On 07/04/2011 07:33 PM, John A. Sullivan III wrote: > > On Mon, 2011-07-04 at 17:48 +0300, Yonit Halperin wrote: > >> On 07/04/2011 05:21 PM, John A. Sullivan III wrote: > >>> Very helpful and interesting. I'll respond in-line - John > >>> >

Re: [Spice-devel] Spice QXL Driver does not work for Windows 7

2011-07-19 Thread John A. Sullivan III
On Tue, 2011-07-19 at 12:48 +0200, Mario wrote: > Alon, > > first of all thanks a lot for your quick reply. Theoretical my Windows > Instance should also load unsigned drivers as I enabled the Test Mode of > Windows 7. > > However to make it a bit more clear please let me describe step by step

Re: [Spice-devel] Announcing spice-xpi 2.5

2011-07-19 Thread quik666
Good afternoon, First of all thanks for the explanations, they have helped me to compile and install spice-xpi on my Ubuntu 11.04 using the latest version of firefox The problem is that when I connect to the portal RHEVM and I try to connect to the VDI, I get an error saying can not contact. I

[Spice-devel] [RFC v3 (w/ sym)] server: api: add spice_qxl_* calls based on QXLWorker contents

2011-07-19 Thread Alon Levy
For each callback in QXLWorker, for example QXLWorker::update_area, add a direct call named spice_qxl_update_area. This will (a) remove the pointless indirection and (b) make shared library versioning alot easier as we'll get new linker symbols which we can tag with the version they appeared in th

Re: [Spice-devel] Win32 Spice client won't start

2011-07-19 Thread Peter Daum
--- Peter Daum wrote Fr, 8.7.2011: > I am trying to run the Win32 spice > client on Windows XP SP3. In some cases it works, but > normally the program terminates immediately without any > indication what might go wrong. The only hint about what is > happening are these entries in spicec.log: > >

Re: [Spice-devel] RFC: spice plans for usb-redir + needed spice-server API extensions

2011-07-19 Thread Gerd Hoffmann
Hi, 3) spice server asks qemu to dynamically create a new spicevmc chardev + usb-redir device couple (this is the part that needs the API extension). That isn't going to fly. Then you'll have magic usb devices on the usb bus libvirt doesn't know about. Which can cause trouble in various

Re: [Spice-devel] RFC: spice plans for usb-redir + needed spice-server API extensions

2011-07-19 Thread Gerd Hoffmann
Hi, 3) spice server asks qemu to dynamically create a new spicevmc chardev + usb-redir device couple (this is the part that needs the API extension). That isn't going to fly. Then you'll have magic usb devices on the usb bus libvirt doesn't know about. Which can cause trouble in various

Re: [Spice-devel] RFC: spice plans for usb-redir + needed spice-server API extensions

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 05:00:54PM +0200, Hans de Goede wrote: > Hi, > > The plan in short: > > 1) The client decides to redirect a certain usb device >(be it through user interaction, or based on admin configuration / > instructed by the controller) > > 2) The client opens a new usbredi

[Spice-devel] RFC: spice plans for usb-redir + needed spice-server API extensions

2011-07-19 Thread Hans de Goede
Hi, The plan in short: 1) The client decides to redirect a certain usb device (be it through user interaction, or based on admin configuration / instructed by the controller) 2) The client opens a new usbredir spice channel to the spice-server for this (1 channel per device) 3) spice

[Spice-devel] RFC: spice plans for usb-redir + needed spice-server API extensions

2011-07-19 Thread Hans de Goede
Hi, The plan in short: 1) The client decides to redirect a certain usb device (be it through user interaction, or based on admin configuration / instructed by the controller) 2) The client opens a new usbredir spice channel to the spice-server for this (1 channel per device) 3) spice

Re: [Spice-devel] [RFC] server: api: add spice_qxl_* calls based on QXLWorker contents

2011-07-19 Thread Gerd Hoffmann
On 07/19/11 16:22, Alon Levy wrote: On Tue, Jul 19, 2011 at 03:13:42PM +0200, Gerd Hoffmann wrote: On 07/19/11 15:08, Alon Levy wrote: For each callback in QXLWorker, for example QXLWorker::update_area, add a direct call named spice_qxl_update_area. +SPICE_GNUC_VISIBLE +void spice_qxl_wakeup

Re: [Spice-devel] [RFC] server: api: add spice_qxl_* calls based on QXLWorker contents

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 03:13:42PM +0200, Gerd Hoffmann wrote: > On 07/19/11 15:08, Alon Levy wrote: > >For each callback in QXLWorker, for example QXLWorker::update_area, add > >a direct call named spice_qxl_update_area. > > >+SPICE_GNUC_VISIBLE > >+void spice_qxl_wakeup(QXLWorker *worker) > >+{

Re: [Spice-devel] 0.8.x status / plans for spice

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 01:14:23PM +0200, Christophe Fergeau wrote: > I've already done that, I wanted to send an email this morning, but for now > the branch doesn't work ;) the current branch is at > http://cgit.freedesktop.org/~teuf/spice/log/?h=0.8 though I'll force-push > a fixed one once I fi

Re: [Spice-devel] [RFC] server: api: add spice_qxl_* calls based on QXLWorker contents

2011-07-19 Thread Gerd Hoffmann
On 07/19/11 15:08, Alon Levy wrote: For each callback in QXLWorker, for example QXLWorker::update_area, add a direct call named spice_qxl_update_area. +SPICE_GNUC_VISIBLE +void spice_qxl_wakeup(QXLWorker *worker) +{ +qxl_worker_wakeup(worker); +} I think we should better pass in QXLInsta

Re: [Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.

2011-07-19 Thread Gerd Hoffmann
On 07/19/11 15:07, Christophe Fergeau wrote: Hey, On Tue, Jul 19, 2011 at 01:59:31PM +0200, Gerd Hoffmann wrote: diff --git a/server/Makefile.am b/server/Makefile.am index 601840a..d94f9fb 100644 --- a/server/Makefile.am +++ b/server/Makefile.am @@ -34,6 +34,7 @@ lib_LTLIBRARIES = libspice-serv

[Spice-devel] [RFC] server: api: add spice_qxl_* calls based on QXLWorker contents

2011-07-19 Thread Alon Levy
For each callback in QXLWorker, for example QXLWorker::update_area, add a direct call named spice_qxl_update_area. This will (a) remove the pointless indirection and (b) make shared library versioning alot easier as we'll get new linker symbols which we can tag with the version they appeared in th

Re: [Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.

2011-07-19 Thread Christophe Fergeau
Hey, On Tue, Jul 19, 2011 at 01:59:31PM +0200, Gerd Hoffmann wrote: > diff --git a/server/Makefile.am b/server/Makefile.am > index 601840a..d94f9fb 100644 > --- a/server/Makefile.am > +++ b/server/Makefile.am > @@ -34,6 +34,7 @@ lib_LTLIBRARIES = libspice-server.la > > libspice_server_la_LDFLAG

Re: [Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Gerd Hoffmann
On 07/19/11 14:16, Alon Levy wrote: On Tue, Jul 19, 2011 at 02:08:38PM +0200, Gerd Hoffmann wrote: Hi, This will (a) remove the pointless indirection and (b) make shared Is this actually better then having a jump to the shared object table (I'm assuming there is one, I haven't looked how

Re: [Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.

2011-07-19 Thread Gerd Hoffmann
On 07/19/11 14:13, Alon Levy wrote: On Tue, Jul 19, 2011 at 01:59:31PM +0200, Gerd Hoffmann wrote: This patch adds symbol versions to the spice server library. Each symbol which is exported by libspice-server gets tagged with the (stable) version where it appeared first. This way the linker an

Re: [Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 02:08:38PM +0200, Gerd Hoffmann wrote: > Hi, > > >>This will (a) remove the pointless indirection and (b) make shared > > > >Is this actually better then having a jump to the shared object table (I'm > >assuming there is one, I haven't looked how it's actually implemented

Re: [Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 01:59:31PM +0200, Gerd Hoffmann wrote: > This patch adds symbol versions to the spice server library. Each > symbol which is exported by libspice-server gets tagged with the > (stable) version where it appeared first. This way the linker and rpm > are able to figure which

Re: [Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Gerd Hoffmann
Hi, This will (a) remove the pointless indirection and (b) make shared Is this actually better then having a jump to the shared object table (I'm assuming there is one, I haven't looked how it's actually implemented)? I'm more thinking about source code being more readable than about savi

Re: [Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.

2011-07-19 Thread Hans de Goede
Hi, Good! Ack! Regards, Hans On 07/19/2011 01:59 PM, Gerd Hoffmann wrote: This patch adds symbol versions to the spice server library. Each symbol which is exported by libspice-server gets tagged with the (stable) version where it appeared first. This way the linker and rpm are able to fig

[Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.

2011-07-19 Thread Gerd Hoffmann
This patch adds symbol versions to the spice server library. Each symbol which is exported by libspice-server gets tagged with the (stable) version where it appeared first. This way the linker and rpm are able to figure which version of the spice-server libary is required by a particular qemu bin

Re: [Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 01:44:56PM +0200, Gerd Hoffmann wrote: > >--- a/server/spice.h > >+++ b/server/spice.h > >@@ -122,6 +122,16 @@ struct QXLWorker { > > void (*reset_cursor)(QXLWorker *worker); > > void (*destroy_surface_wait)(QXLWorker *worker, uint32_t surface_id); > > void (*

Re: [Spice-devel] [PATCH 4/5] client: improve WAN option description

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 02:48:16PM +0300, Alon Levy wrote: > On Tue, Jul 19, 2011 at 01:42:54PM +0200, Christophe Fergeau wrote: > > Sorry, I was too hasty pushing it. Should I make an additional commit to > > split it? > > Not Important. Too late :) How does the patch below look? Christophe F

Re: [Spice-devel] [PATCH 4/5] client: improve WAN option description

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 01:42:54PM +0200, Christophe Fergeau wrote: > On Tue, Jul 19, 2011 at 02:34:35PM +0300, Alon Levy wrote: > > > > Can you split the line at the same time? I guess this break is another > > reason to have a limit > > to line length. > > Sorry, I was too hasty pushing it. Sh

Re: [Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Gerd Hoffmann
--- a/server/spice.h +++ b/server/spice.h @@ -122,6 +122,16 @@ struct QXLWorker { void (*reset_cursor)(QXLWorker *worker); void (*destroy_surface_wait)(QXLWorker *worker, uint32_t surface_id); void (*loadvm_commands)(QXLWorker *worker, struct QXLCommandExt *ext, uint32_t count);

Re: [Spice-devel] [PATCH 4/5] client: improve WAN option description

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 02:34:35PM +0300, Alon Levy wrote: > > Can you split the line at the same time? I guess this break is another reason > to have a limit > to line length. Sorry, I was too hasty pushing it. Should I make an additional commit to split it? Christophe pgpuNLo5mELpl.pgp Desc

Re: [Spice-devel] [Spice-commits] 2 commits - client/application.cpp server/smartcard.h

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 04:31:23AM -0700, Christophe Fergau wrote: > client/application.cpp |2 +- > server/smartcard.h |2 -- > 2 files changed, 1 insertion(+), 3 deletions(-) > > New commits: > commit f045886a0623fcec38c390c31570971b4fb8d2d5 > Author: Christophe Fergeau > Date: M

Re: [Spice-devel] [PATCH] common: add backtrace via gstack

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 02:22:14PM +0300, Uri Lublin wrote: > I guess I misunderstood what is suggested to be checked in configure.ac > From the two options below I meant the second. > > Checking that backtrace or backtrace_symbols are available during > compile time should be done in configure.ac

Re: [Spice-devel] [PATCH 4/5] client: improve WAN option description

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 01:22:13PM +0200, Christophe Fergeau wrote: > On Fri, Jul 08, 2011 at 12:17:31PM +0200, Christophe Fergeau wrote: > > diff --git a/client/application.cpp b/client/application.cpp > > index 8e9fd8a..18101a5 100644 > > --- a/client/application.cpp > > +++ b/client/application.

Re: [Spice-devel] [PATCH 4/5] client: improve WAN option description

2011-07-19 Thread Christophe Fergeau
On Fri, Jul 08, 2011 at 12:17:31PM +0200, Christophe Fergeau wrote: > diff --git a/client/application.cpp b/client/application.cpp > index 8e9fd8a..18101a5 100644 > --- a/client/application.cpp > +++ b/client/application.cpp > @@ -2276,11 +2276,11 @@ bool Application::process_cmd_line(int argc, cha

Re: [Spice-devel] [PATCH] common: add backtrace via gstack

2011-07-19 Thread Uri Lublin
On 07/18/2011 01:32 PM, Christophe Fergeau wrote: On Mon, Jul 18, 2011 at 01:19:05PM +0300, Uri Lublin wrote: On Mon, Jul 18, 2011 at 11:13:50AM +0200, Christophe Fergeau wrote: Or this can be checked for in configure.ac I'm not sure configure.ac is the place to check it. Why not? If you wa

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 12:26:16PM +0200, Hans de Goede wrote: > I've not been using master myself lately. But as far as I've heard from others > master is in pretty good shape, so yes. I just broke it though ;) /me fixes Christophe pgpd37r4Cy4kK.pgp Description: PGP signature _

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 01:11:25PM +0300, Alon Levy wrote: > On Tue, Jul 19, 2011 at 11:52:28AM +0200, Hans de Goede wrote: > > Hi, > > > > On 07/19/2011 11:33 AM, Christophe Fergeau wrote: > > >Hi Hans, > > > > > >On Tue, Jul 19, 2011 at 11:20:23AM +0200, Hans de Goede wrote: > > >>Can we tag a 0

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Gerd Hoffmann
Hi, Can we tag a 0.9.0 release from spice git master ? and release tarbals for this at this moment in time? If not can we make a short to do list with things which needs to be done before we can do this? I have one item: shared library symbol versioning. Figured today that just raising the

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Hans de Goede
Hi, On 07/19/2011 12:11 PM, Alon Levy wrote: On Tue, Jul 19, 2011 at 11:52:28AM +0200, Hans de Goede wrote: Hi, On 07/19/2011 11:33 AM, Christophe Fergeau wrote: Hi Hans, On Tue, Jul 19, 2011 at 11:20:23AM +0200, Hans de Goede wrote: Can we tag a 0.9.0 release from spice git master ? and re

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 11:52:28AM +0200, Hans de Goede wrote: > Hi, > > On 07/19/2011 11:33 AM, Christophe Fergeau wrote: > >Hi Hans, > > > >On Tue, Jul 19, 2011 at 11:20:23AM +0200, Hans de Goede wrote: > >>Can we tag a 0.9.0 release from spice git master ? and release tarbals for > >>this > >>

Re: [Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Yonit Halperin
On 07/19/2011 11:52 AM, Alon Levy wrote: The new _ASYNC io's in qxl_dev listed at the end get six new api functions, and an additional callback function "async_complete". When the async version of a specific io is used, completion is notified by calling async_complete, and no READY message is wri

Re: [Spice-devel] [PATCH v5 9/9] server/tests: test_util.h: fix double ASSERT definition

2011-07-19 Thread Alon Levy
On Tue, Jul 19, 2011 at 11:18:39AM +0200, Christophe Fergeau wrote: > On Tue, Jul 19, 2011 at 11:53:03AM +0300, Alon Levy wrote: > > --- > > server/tests/test_util.h |3 +++ > > 1 files changed, 3 insertions(+), 0 deletions(-) > > > > diff --git a/server/tests/test_util.h b/server/tests/test_

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Hans de Goede
Hi, On 07/19/2011 11:33 AM, Christophe Fergeau wrote: Hi Hans, On Tue, Jul 19, 2011 at 11:20:23AM +0200, Hans de Goede wrote: Can we tag a 0.9.0 release from spice git master ? and release tarbals for this at this moment in time? If not can we make a short to do list with things which needs to

Re: [Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Christophe Fergeau
Hi Hans, On Tue, Jul 19, 2011 at 11:20:23AM +0200, Hans de Goede wrote: > Can we tag a 0.9.0 release from spice git master ? and release tarbals for > this > at this moment in time? If not can we make a short to do list with things > which > needs to be done before we can do this? I'm all for s

Re: [Spice-devel] [PATCH v5 0/9] async and s3 support

2011-07-19 Thread Christophe Fergeau
ACK for the trivial patches 1, 2 and 3 Christophe On Tue, Jul 19, 2011 at 11:52:54AM +0300, Alon Levy wrote: > v5 changes: > * dispatcher handles completion of async calls when worker is done, not >when they are called (same as sync versions) > * added a dispatcher mutex to fail a new async

[Spice-devel] 0.10.x status / plans for spice for Fedora 16

2011-07-19 Thread Hans de Goede
Hi All, I was wondering what the status are wrt working towards the 0.10.x series. Can we tag a 0.9.0 release from spice git master ? and release tarbals for this at this moment in time? If not can we make a short to do list with things which needs to be done before we can do this? Also given t

Re: [Spice-devel] [PATCH v5 9/9] server/tests: test_util.h: fix double ASSERT definition

2011-07-19 Thread Christophe Fergeau
On Tue, Jul 19, 2011 at 11:53:03AM +0300, Alon Levy wrote: > --- > server/tests/test_util.h |3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/server/tests/test_util.h b/server/tests/test_util.h > index ac1442d..9844426 100644 > --- a/server/tests/test_util.h > +++ b/

[Spice-devel] [PATCH v5 9/9] server/tests: test_util.h: fix double ASSERT definition

2011-07-19 Thread Alon Levy
--- server/tests/test_util.h |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/server/tests/test_util.h b/server/tests/test_util.h index ac1442d..9844426 100644 --- a/server/tests/test_util.h +++ b/server/tests/test_util.h @@ -4,6 +4,9 @@ #define TRUE 1 #define FALSE 0

[Spice-devel] [PATCH v5 8/9] server/spice.h: bump QXL_MINOR because of QXLWorker and QXLInterface changes

2011-07-19 Thread Alon Levy
--- server/spice.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/server/spice.h b/server/spice.h index da147cd..d88307b 100644 --- a/server/spice.h +++ b/server/spice.h @@ -89,7 +89,7 @@ struct SpiceCoreInterface { #define SPICE_INTERFACE_QXL "qxl" #define SPICE_INT

[Spice-devel] [PATCH v5 7/9] server: add QXLWorker.flush_surfaces_async for S3/S4 support

2011-07-19 Thread Alon Levy
This does the following, all to remove any referenced memory on the pci bars: flush_all_qxl_commands(worker); flush_all_surfaces(worker); red_wait_outgoing_item((RedChannel *)worker->display_channel); red_wait_outgoing_item((RedChannel *)worker->cursor_channel); The added api is sp

[Spice-devel] [PATCH v5 6/9] server: add QXLInterface::update_area_complete callback

2011-07-19 Thread Alon Levy
when update_area_async is called update_area_complete will be called with the surfaces dirty rectangle list. --- server/red_worker.c | 60 +- server/spice.h |3 ++ 2 files changed, 47 insertions(+), 16 deletions(-) diff --git a/server/red

[Spice-devel] [PATCH v5 5/9] server/red_worker: handle_dev_input: reuse write_ready introduced for async

2011-07-19 Thread Alon Levy
--- server/red_worker.c | 12 1 files changed, 4 insertions(+), 8 deletions(-) diff --git a/server/red_worker.c b/server/red_worker.c index 5a8431a..06cd8e9 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -9706,6 +9706,10 @@ static void handle_dev_input(EventListener

[Spice-devel] [PATCH v5 4/9] server: add async io support

2011-07-19 Thread Alon Levy
The new _ASYNC io's in qxl_dev listed at the end get six new api functions, and an additional callback function "async_complete". When the async version of a specific io is used, completion is notified by calling async_complete, and no READY message is written or expected by the dispatcher. update

[Spice-devel] [PATCH v5 3/9] bump required spice-protocol to 0.8.1 for qxl_dev async and s3 updates

2011-07-19 Thread Alon Levy
--- configure.ac |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 3268df6..cb0ca99 100644 --- a/configure.ac +++ b/configure.ac @@ -132,7 +132,7 @@ AM_CONDITIONAL(SUPPORT_CLIENT, test "x$enable_client" = "xyes") dnl =

[Spice-devel] [PATCH v5 2/9] server/red_worker: remove print on handle_dev_destroy_surfaces

2011-07-19 Thread Alon Levy
--- server/red_worker.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/server/red_worker.c b/server/red_worker.c index 8337a9b..2349ac5 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -9550,7 +9550,7 @@ static inline void handle_dev_destroy_surfaces(RedWork

[Spice-devel] [PATCH v5 1/9] server/red_worker: *_release_item: less frequent debug messages

2011-07-19 Thread Alon Levy
--- server/red_worker.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/server/red_worker.c b/server/red_worker.c index bfb3cf9..8337a9b 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -9149,7 +9149,7 @@ static void display_channel_release_item(RedChannel

[Spice-devel] [PATCH v5 0/9] async and s3 support

2011-07-19 Thread Alon Levy
v5 changes: * dispatcher handles completion of async calls when worker is done, not when they are called (same as sync versions) * added a dispatcher mutex to fail a new async during existing async. this should not happen because the driver already has the same logic, and qemu also. but