On 17 Sep 2013, at 18:04, Paolo Bonzini wrote: > Alex, what's missing before block.c and QED can use aio_timer_new on > the main AioContext, instead of timer_new?
If we assume at this stage the threading is no different, very little I think. Off the top of my head it should be a case of: 1. Audit timer routines to ensure they are safe to call from inside aio_poll rather than mainloop. EG if there is a timer routine that itself calls aio_poll, that would presumably be bad. A quick check suggests we need to think about the coroutine stuff carefully here if we don't want recursion. 2. Replace timer_new by aio_timer_new 3. Cross fingers and hope for the best. I think block/iscsi.c needs doing too. If we're worried about threading changes, then I'm not sure how much of the thread safety stuff has been pulled to master, plus someone needs to audit thread safety for use_icount=1. -- Alex Bligh