On Thu 21 Dec 2017 03:22:34 PM CET, Kevin Wolf wrote:
> Signed-off-by: Kevin Wolf <kw...@redhat.com>
> Reviewed-by: Fam Zheng <f...@redhat.com>
> ---
>  block/io.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/block/io.c b/block/io.c
> index cf780c3cb0..b94740b8ff 100644
> --- a/block/io.c
> +++ b/block/io.c
> @@ -330,6 +330,12 @@ void bdrv_drain_all_begin(void)
>      BdrvNextIterator it;
>      GSList *aio_ctxs = NULL, *ctx;
>  
> +    /* BDRV_POLL_WHILE() for a node can only be called from its own I/O 
> thread
> +     * or the main loop AioContext. We potentially use BDRV_POLL_WHILE() on
> +     * nodes in several different AioContexts, so make sure we're in the main
> +     * context. */
> +    assert(qemu_get_current_aio_context() == qemu_get_aio_context());
> +
>      block_job_pause_all();

Reviewed-by: Alberto Garcia <be...@igalia.com>

Berto

Reply via email to