This patch introduces the blk_drain() function which allows to replace blk_drain_all() when only one BlockDriverState needs to be drained.
Cc: Christian Borntraeger <borntrae...@de.ibm.com> Cc: Cornelia Huck <cornelia.h...@de.ibm.com> Cc: Kevin Wolf <kw...@redhat.com> Cc: Paolo Bonzini <pbonz...@redhat.com> Cc: Stefan Hajnoczi <stefa...@redhat.com> Signed-off-by: Alexander Yarygin <yary...@linux.vnet.ibm.com> Reviewed-by: Paolo Bonzini <pbonz...@redhat.com> Acked-by: Kevin Wolf <kw...@redhat.com> --- block/block-backend.c | 5 +++++ include/sysemu/block-backend.h | 1 + 2 files changed, 6 insertions(+) diff --git a/block/block-backend.c b/block/block-backend.c index 93e46f3..aee8a12 100644 --- a/block/block-backend.c +++ b/block/block-backend.c @@ -700,6 +700,11 @@ int blk_flush_all(void) return bdrv_flush_all(); } +void blk_drain(BlockBackend *blk) +{ + bdrv_drain(blk->bs); +} + void blk_drain_all(void) { bdrv_drain_all(); diff --git a/include/sysemu/block-backend.h b/include/sysemu/block-backend.h index b4a4d5e..8fc960f 100644 --- a/include/sysemu/block-backend.h +++ b/include/sysemu/block-backend.h @@ -118,6 +118,7 @@ int blk_co_discard(BlockBackend *blk, int64_t sector_num, int nb_sectors); int blk_co_flush(BlockBackend *blk); int blk_flush(BlockBackend *blk); int blk_flush_all(void); +void blk_drain(BlockBackend *blk); void blk_drain_all(void); BlockdevOnError blk_get_on_error(BlockBackend *blk, bool is_read); BlockErrorAction blk_get_error_action(BlockBackend *blk, bool is_read, -- 1.9.1