OSDN Git Service

block/io: Quiesce parents between drained_begin/end
authorKevin Wolf <kwolf@redhat.com>
Wed, 11 May 2016 12:57:23 +0000 (14:57 +0200)
committerKevin Wolf <kwolf@redhat.com>
Thu, 19 May 2016 14:45:30 +0000 (16:45 +0200)
commitbb9aaecaf1d9b9d7da8f8c73a4cbf3afd9848abe
treeb104272631bfecd77dae99b9f8b9c84cb93c7d52
parentc2066af0514d80a805dac82accaec1121babfa15
block/io: Quiesce parents between drained_begin/end

So far, bdrv_parent_drained_begin/end() was called for the duration of
the actual bdrv_drain() at the beginning of a drained section, but we
really should keep parents quiesced until the end of the drained
section.

This does not actually change behaviour at this point because the only
user of the .drained_begin/end BdrvChildRole callback is I/O throttling,
which already doesn't send any new requests after flushing its queue in
.drained_begin. The patch merely removes a trap for future users.

Reported-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
block/io.c