On 04/08/20 07:28, Stefan Hajnoczi wrote: > This patch series eliminates ctx->notifier EventNotifier activity when > aio_poll() is in polling mode. There is no need to use the EventNotifier since > a polling handler can detect that aio_notify() has been called by monitoring a > field in memory instead. > > Optimizing out the EventNotifier calls improves null-co random read 4KB > iodepth=1 IOPS by 18%. > > aio_compute_timeout() is now called twice if aio_poll() needs to block, which > means an extra qemu_clock_get_ns() call is made when there is an active timer. > An alternative would be to set timeout = 0 if ctx->notified is true before > blocking, but going around the event loop again could slow things down more. > > I have not modified docs/spin/aio_notify*.promela because I'm not familiar > with > the SPIN model checker.
I'll take a look. Looks good apart from more comments, on which I commented. Paolo