[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH 2/3] virtio-blk: Use blk_drain() to
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH 2/3] virtio-blk: Use blk_drain() to drain IO requests |
Date: |
Fri, 12 Jun 2015 15:17:16 +0100 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Thu, Jun 11, 2015 at 10:51:54AM +0800, Fam Zheng wrote:
> On Wed, 06/10 14:38, Alexander Yarygin wrote:
> > Each call of the virtio_blk_reset() function calls blk_drain_all(),
> > which works for all existing BlockDriverStates, while draining only
> > one is needed.
> >
> > This patch replaces blk_drain_all() by blk_drain() in virtio_blk_reset().
>
> Please add a note "virtio_blk_data_plane_stop should be called after draining
> because it restores vblk->complete_request" as well.
> >
> > Cc: Christian Borntraeger <address@hidden>
> > Cc: Cornelia Huck <address@hidden>
> > Cc: Kevin Wolf <address@hidden>
> > Cc: Paolo Bonzini <address@hidden>
> > Cc: Stefan Hajnoczi <address@hidden>
>
> Cc: address@hidden
>
> > Signed-off-by: Alexander Yarygin <address@hidden>
> > ---
> > hw/block/virtio-blk.c | 11 ++++++-----
> > 1 file changed, 6 insertions(+), 5 deletions(-)
> >
> > diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
> > index e6afe97..2009092 100644
> > --- a/hw/block/virtio-blk.c
> > +++ b/hw/block/virtio-blk.c
> > @@ -652,15 +652,16 @@ static void virtio_blk_reset(VirtIODevice *vdev)
> > {
> > VirtIOBlock *s = VIRTIO_BLK(vdev);
> >
> > - if (s->dataplane) {
> > - virtio_blk_data_plane_stop(s->dataplane);
> > - }
> > -
> > /*
> > * This should cancel pending requests, but can't do nicely until there
> > * are per-device request lists.
> > */
>
> This comment can be dropped now.
The comment still has value.
bdrv_drain != cancel pending requests
We're using the per-device request list now but we're not cancelling
yet. The comment hasn't been fully addressed.
Stefan
pgps7oFaqB_0t.pgp
Description: PGP signature