* Stefan Hajnoczi <stefa...@gmail.com> [2011-01-17 10:32:24]: > 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
I'll make the above changes with respect to handle_work() and dequeue_work_on_queue(). Hopefully the patch series gets more review now that I have broken down the patchset so that review becomes easier. -arun