On Thu, 10/27 12:48, Paolo Bonzini wrote:
> The only difference from v2 is the disappearing of bdrv_aio_pdiscard,
> bdrv_aio_ioctl and bdrv_ioctl.

The diff-of-diff looks sane - only a few hunks are dropped as you said, and a
comment update about the rule of acquiring AIOContext in bdrv_drain_all, so,

Reviewed-by: Fam Zheng <f...@redhat.com>

, and I'm sending a pull shortly.

Thanks!


> 
> Thanks,
> 
> Paolo
> 
> Fam Zheng (1):
>   qed: Implement .bdrv_drain
> 
> Paolo Bonzini (19):
>   replication: interrupt failover if the main device is closed
>   blockjob: introduce .drain callback for jobs
>   mirror: use bdrv_drained_begin/bdrv_drained_end
>   block: add BDS field to count in-flight requests
>   block: change drain to look only at one child at a time
>   block: introduce BDRV_POLL_WHILE
>   nfs: move nfs_set_events out of the while loops
>   nfs: use BDRV_POLL_WHILE
>   sheepdog: use BDRV_POLL_WHILE
>   aio: introduce qemu_get_current_aio_context
>   iothread: detach all block devices before stopping them
>   replication: pass BlockDriverState to reopen_backing_file
>   block: prepare bdrv_reopen_multiple to release AioContext
>   qemu-io: acquire AioContext
>   qemu-img: call aio_context_acquire/release around block job
>   block: only call aio_poll on the current thread's AioContext
>   iothread: release AioContext around aio_poll
>   qemu-thread: introduce QemuRecMutex
>   aio: convert from RFifoLock to QemuRecMutex
> 
>  async.c                         |  29 ++-------
>  block.c                         |   6 +-
>  block/backup.c                  |  17 +++++
>  block/block-backend.c           |  30 ++++++---
>  block/commit.c                  |   2 +-
>  block/io.c                      | 137 
> ++++++++++++++++++++++------------------
>  block/mirror.c                  |  70 ++++++++++++++------
>  block/nfs.c                     |  55 +++++++++-------
>  block/qed-table.c               |  16 ++---
>  block/qed.c                     |  16 ++++-
>  block/replication.c             |  27 +++++---
>  block/sheepdog.c                |  67 +++++++++++---------
>  blockjob.c                      |  37 ++++++-----
>  docs/multiple-iothreads.txt     |  40 +++++++-----
>  hw/scsi/virtio-scsi-dataplane.c |   4 +-
>  include/block/aio.h             |  24 +++++--
>  include/block/block.h           |  31 ++++++++-
>  include/block/block_int.h       |  27 ++++++--
>  include/block/blockjob.h        |   7 ++
>  include/qemu/rfifolock.h        |  54 ----------------
>  include/qemu/thread-posix.h     |   6 ++
>  include/qemu/thread-win32.h     |  10 +++
>  include/qemu/thread.h           |   3 +
>  iothread.c                      |  33 +++++++---
>  qemu-img.c                      |   6 ++
>  qemu-io-cmds.c                  |   6 +-
>  stubs/Makefile.objs             |   1 +
>  stubs/iothread.c                |   8 +++
>  tests/.gitignore                |   1 -
>  tests/Makefile.include          |   2 -
>  tests/test-aio.c                |  22 ++++---
>  tests/test-rfifolock.c          |  91 --------------------------
>  util/Makefile.objs              |   1 -
>  util/qemu-thread-posix.c        |  14 ++++
>  util/qemu-thread-win32.c        |  25 ++++++++
>  util/rfifolock.c                |  78 -----------------------
>  36 files changed, 521 insertions(+), 482 deletions(-)
>  delete mode 100644 include/qemu/rfifolock.h
>  create mode 100644 stubs/iothread.c
>  delete mode 100644 tests/test-rfifolock.c
>  delete mode 100644 util/rfifolock.c
> 
> -- 
> 2.7.4
> 

Reply via email to