qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH RFC 0/3] iothread: release iothread around aio_p


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH RFC 0/3] iothread: release iothread around aio_poll
Date: Tue, 21 Apr 2015 17:54:59 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0


On 21/04/2015 17:40, Stefan Hajnoczi wrote:
>> >
>> > Stefan, can you put this on track for 2.4 or do you need a repost?
> This series causes qemu-iotests -qcow2 091 to fail:
> 
> 9f83aea22314d928bb272153ff37d2d7f5adbf06 is the first bad commit
> commit 9f83aea22314d928bb272153ff37d2d7f5adbf06
> Author: Paolo Bonzini <address@hidden>
> Date:   Fri Feb 20 17:26:50 2015 +0100
> 
>     aio-posix: move pollfds to thread-local storage

Oops...  what I intended is this:

diff --git a/aio-posix.c b/aio-posix.c
index 4a30b77..e411591 100644
--- a/aio-posix.c
+++ b/aio-posix.c
@@ -254,8 +254,7 @@ bool aio_poll(AioContext *ctx, bool blocking)
     aio_set_dispatching(ctx, !blocking);
 
     ctx->walking_handlers++;
-
-    npfd = 0;
+    assert(npfd == 0);
 
     /* fill pollfds */
     QLIST_FOREACH(node, &ctx->aio_handlers, node) {
@@ -276,6 +275,7 @@ bool aio_poll(AioContext *ctx, bool blocking)
         }
     }
 
+    npfd = 0;
     ctx->walking_handlers--;
 
     /* Run dispatch even if there were no readable fds to run timers */

but the above is totally untested, so feel free to just remove
the assertion or also to drop the series.

Paolo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]