On 2/3/23 11:19, Philippe Mathieu-Daudé wrote:
On 1/3/23 21:57, Stefan Hajnoczi wrote:
The following conversion is safe and does not change behavior:

      GLOBAL_STATE_CODE();
      ...
   -  AIO_WAIT_WHILE(qemu_get_aio_context(), ...);
   +  AIO_WAIT_WHILE_UNLOCKED(NULL, ...);

Since we're in GLOBAL_STATE_CODE(), qemu_get_aio_context() is our home
thread's AioContext. Thus AIO_WAIT_WHILE() does not unlock the
AioContext:

   if (ctx_ && in_aio_context_home_thread(ctx_)) {                \
       while ((cond)) {                                           \
           aio_poll(ctx_, true);                                  \
           waited_ = true;                                        \
       }                                                          \

And that means AIO_WAIT_WHILE_UNLOCKED(NULL, ...) can be substituted.

Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com>
---
  block/graph-lock.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org>

Tested-by: Philippe Mathieu-Daudé <phi...@linaro.org>


Reply via email to