qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 00/12] Threadlets Infrastructure.


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH 00/12] Threadlets Infrastructure.
Date: Mon, 17 Jan 2011 10:32:24 +0000

This series needs a new pair of eyes for review.  I'm probably missing
things here after seeing it many times.

posix-aio-compat.c:handle_work() doesn't need to take aiocb_mutex for
container_of(), which just calculates an address but doesn't actually
access the aiocb.

dequeue_work_on_queue() is incorrect because a threadlet_worker() may
remove the work item from the request_list just before we remove it
again.  That double-remove is wrong and by not detecting this case we
return success even though the work function may be running
concurrently (and it's not safe to do anything with the work item at
this time!).  Dequeue needs to lock the request_list, test if the item
is still
on the list, remove it if necessary, and return whether or not it was removed.

Stefan



reply via email to

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