Hi,
I'm trying to understand contexts and handlers/notifiers and a bit
confused about two contexts living in main loop: qemu_aio_context and
iohandler_ctx. It is mentioned in the iohandler_ctx comment that
qemu_aio_context can't be reused because "iohandlers mustn't be polled
by aio_poll(qemu_aio_context)" but there is no exlanation why.
I tried to find examples and failed to understand why virtio-net
eventfds are registred to iohandler_ctx with generic virtio callback
virtio_device_start_ioeventfd_impl() but TX bottom-half and handlers of
back-end TAP use qemu_aio_context.
Can you explain a little bit why we need some fds to be polled and some
not to be polled? And how can I choose which context is right for me?
Thanks in advance for your help!
Anton