On 13/09/2018 14:52, Kevin Wolf wrote: > Even if AIO_WAIT_WHILE() is called in the home context of the > AioContext, we still want to allow the condition to change depending on > other threads as long as they kick the AioWait. Specfically block jobs > can be running in an I/O thread and should then be able to kick a drain > in the main loop context.
I don't understand the scenario very well. Why hasn't the main loop's drain incremented num_waiters? Note I'm not against the patch---though I would hoist the atomic_inc/atomic_dec outside the if, since it's done in both branches. Paolo
