Am 16.11.2022 um 13:22 hat Emanuele Giuseppe Esposito geschrieben: > Basically BdrvPollCo->bs is only used by bdrv_poll_co(), and the > functions that it uses are both using bdrv_get_aio_context, that > defaults to qemu_get_aio_context() if bs is NULL. > > Therefore pass NULL to BdrvPollCo to automatically generate a function > that create and runs a coroutine in the main loop. > > Signed-off-by: Emanuele Giuseppe Esposito <eespo...@redhat.com>
It happens to work, but it's kind of ugly to call bdrv_coroutine_enter() and BDRV_POLL_WHILE() with a NULL bs. How hard would it be to generate code that doesn't use these functions, but directly aio_co_enter() and AIO_WAIT_WHILE() for wrappers that are not related to a BDS? Kevin