[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH] block: make BDRV_POLL_WHILE() re-entrancy safe
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-block] [PATCH] block: make BDRV_POLL_WHILE() re-entrancy safe |
Date: |
Wed, 7 Mar 2018 11:35:07 +0000 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
On Tue, Mar 06, 2018 at 12:08:44PM +0100, Kevin Wolf wrote:
> Am 06.03.2018 um 11:53 hat Stefan Hajnoczi geschrieben:
> > Nested BDRV_POLL_WHILE() calls can occur. Currently
> > assert(!bs_->wakeup) will fail when this happens.
> >
> > This patch converts bs->wakeup from bool to a counter.
> >
> > Nesting works correctly because outer BDRV_POLL_WHILE() callers evaluate
> > the condition again after the inner caller completes (invoking the inner
> > caller counts as aio_poll() progress).
> >
> > Reported-by: "fuweiwei (C)" <address@hidden>
> > Cc: Paolo Bonzini <address@hidden>
> > Signed-off-by: Stefan Hajnoczi <address@hidden>
>
> Doesn't this conflict with your own AIO_WAIT_WHILE() patch?
Yes, I wanted this patch to be easy for Weiwei to test without
dependencies.
AIO_WAIT_WHILE() has just hit qemu.git/master, so I'll rebase and send a
v2.
Stefan
signature.asc
Description: PGP signature