mbox series

[0/4] block: Fix BlockDriver callbacks in bdrv_drain_all_begin()

Message ID 20171205145424.24598-1-kwolf@redhat.com
Headers show
Series block: Fix BlockDriver callbacks in bdrv_drain_all_begin() | expand

Message

Kevin Wolf Dec. 5, 2017, 2:54 p.m. UTC
I was looking into the drain functions in order to develop them a bit in
the direction that Fam suggested, to unify the code between bdrv_drain()
and bdrv_drain_all() a bit more, and maybe to find a place to take
coroutine locks for graph changes.

The first thing I found is a bug in bdrv_drain_all(), so I'm already
sending this part before I have made much progress with my actual plan.

Kevin Wolf (4):
  block: Make bdrv_drain_invoke() recursive
  block: Call .drain_begin only once in bdrv_drain_all_begin()
  test-bdrv-drain: Test BlockDriver callbacks for drain
  block: bdrv_drain_recurse(): Remove unused begin parameter

 block/io.c              |  25 +++++----
 tests/test-bdrv-drain.c | 137 ++++++++++++++++++++++++++++++++++++++++++++++++
 tests/Makefile.include  |   2 +
 3 files changed, 155 insertions(+), 9 deletions(-)
 create mode 100644 tests/test-bdrv-drain.c