qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Kevin Wolf <kwolf@redhat.com>
To: qemu-block@nongnu.org
Cc: kwolf@redhat.com, qemu-devel@nongnu.org
Subject: [PULL 00/27] Block layer patches
Date: Tue, 31 Oct 2023 19:58:51 +0100	[thread overview]
Message-ID: <20231031185918.346940-1-kwolf@redhat.com> (raw)

The following changes since commit 516fffc9933cb21fad41ca8f7bf465d238d4d375:

  Merge tag 'pull-lu-20231030' of https://gitlab.com/rth7680/qemu into staging (2023-10-31 07:12:40 +0900)

are available in the Git repository at:

  https://repo.or.cz/qemu/kevin.git tags/for-upstream

for you to fetch changes up to 900e7d413d630ebd3f5d64bae0e6249621ec0c7f:

  iotests: add test for changing mirror's copy_mode (2023-10-31 19:46:51 +0100)

----------------------------------------------------------------
Block layer patches

- virtio-blk: use blk_io_plug_call() instead of notification BH
- mirror: allow switching from background to active mode
- qemu-img rebase: add compression support
- Fix locking in media change monitor commands
- Fix a few blockjob-related deadlocks when using iothread

----------------------------------------------------------------
Andrey Drobyshev (8):
      qemu-img: rebase: stop when reaching EOF of old backing file
      qemu-iotests: 024: add rebasing test case for overlay_size > backing_size
      qemu-img: rebase: use backing files' BlockBackend for buffer alignment
      qemu-img: add chunk size parameter to compare_buffers()
      qemu-img: rebase: avoid unnecessary COW operations
      iotests/{024, 271}: add testcases for qemu-img rebase
      qemu-img: add compression option to rebase subcommand
      iotests: add tests for "qemu-img rebase" with compression

Fiona Ebner (13):
      blockjob: drop AioContext lock before calling bdrv_graph_wrlock()
      block: avoid potential deadlock during bdrv_graph_wrlock() in bdrv_close()
      blockdev: mirror: avoid potential deadlock when using iothread
      blockjob: introduce block-job-change QMP command
      block/mirror: set actively_synced even after the job is ready
      block/mirror: move dirty bitmap to filter
      block/mirror: determine copy_to_target only once
      mirror: implement mirror_change method
      qapi/block-core: use JobType for BlockJobInfo's type
      qapi/block-core: turn BlockJobInfo into a union
      blockjob: query driver-specific info via a new 'query' driver method
      mirror: return mirror-specific information upon query
      iotests: add test for changing mirror's copy_mode

Kevin Wolf (2):
      block: Fix locking in media change monitor commands
      iotests: Test media change with iothreads

Stefan Hajnoczi (4):
      block: rename blk_io_plug_call() API to defer_call()
      util/defer-call: move defer_call() to util/
      virtio: use defer_call() in virtio_irqfd_notify()
      virtio-blk: remove batch notification BH

 qapi/block-core.json                               |  59 ++++++-
 qapi/job.json                                      |   4 +-
 docs/tools/qemu-img.rst                            |   6 +-
 include/block/blockjob.h                           |  11 ++
 include/block/blockjob_int.h                       |  12 ++
 include/qemu/defer-call.h                          |  16 ++
 include/sysemu/block-backend-io.h                  |   4 -
 block.c                                            |   2 +-
 block/blkio.c                                      |   9 +-
 block/io_uring.c                                   |  11 +-
 block/linux-aio.c                                  |   9 +-
 block/mirror.c                                     | 131 ++++++++++----
 block/monitor/block-hmp-cmds.c                     |   4 +-
 block/nvme.c                                       |   5 +-
 block/plug.c                                       | 159 -----------------
 block/qapi-sysemu.c                                |   5 +
 blockdev.c                                         |  28 ++-
 blockjob.c                                         |  30 +++-
 hw/block/dataplane/virtio-blk.c                    |  48 +----
 hw/block/dataplane/xen-block.c                     |  11 +-
 hw/block/virtio-blk.c                              |   5 +-
 hw/scsi/virtio-scsi.c                              |   7 +-
 hw/virtio/virtio.c                                 |  13 +-
 job.c                                              |   1 +
 qemu-img.c                                         | 136 +++++++++++----
 util/defer-call.c                                  | 156 +++++++++++++++++
 util/thread-pool.c                                 |   5 +
 MAINTAINERS                                        |   3 +-
 block/meson.build                                  |   1 -
 hw/virtio/trace-events                             |   1 +
 qemu-img-cmds.hx                                   |   4 +-
 tests/qemu-iotests/024                             | 117 +++++++++++++
 tests/qemu-iotests/024.out                         |  73 ++++++++
 tests/qemu-iotests/109.out                         |  24 +--
 tests/qemu-iotests/118                             |   6 +-
 tests/qemu-iotests/271                             | 131 ++++++++++++++
 tests/qemu-iotests/271.out                         |  82 +++++++++
 tests/qemu-iotests/314                             | 165 ++++++++++++++++++
 tests/qemu-iotests/314.out                         |  75 ++++++++
 tests/qemu-iotests/tests/mirror-change-copy-mode   | 193 +++++++++++++++++++++
 .../qemu-iotests/tests/mirror-change-copy-mode.out |   5 +
 util/meson.build                                   |   1 +
 42 files changed, 1437 insertions(+), 331 deletions(-)
 create mode 100644 include/qemu/defer-call.h
 delete mode 100644 block/plug.c
 create mode 100644 util/defer-call.c
 create mode 100755 tests/qemu-iotests/314
 create mode 100644 tests/qemu-iotests/314.out
 create mode 100755 tests/qemu-iotests/tests/mirror-change-copy-mode
 create mode 100644 tests/qemu-iotests/tests/mirror-change-copy-mode.out



             reply	other threads:[~2023-10-31 19:04 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-31 18:58 Kevin Wolf [this message]
2023-10-31 18:58 ` [PULL 01/27] qemu-img: rebase: stop when reaching EOF of old backing file Kevin Wolf
2023-10-31 18:58 ` [PULL 02/27] qemu-iotests: 024: add rebasing test case for overlay_size > backing_size Kevin Wolf
2023-10-31 18:58 ` [PULL 03/27] qemu-img: rebase: use backing files' BlockBackend for buffer alignment Kevin Wolf
2023-10-31 18:58 ` [PULL 04/27] qemu-img: add chunk size parameter to compare_buffers() Kevin Wolf
2023-10-31 18:58 ` [PULL 05/27] qemu-img: rebase: avoid unnecessary COW operations Kevin Wolf
2023-10-31 18:58 ` [PULL 06/27] iotests/{024, 271}: add testcases for qemu-img rebase Kevin Wolf
2024-07-22  7:18   ` Thomas Huth
2024-07-30  9:43     ` Andrey Drobyshev
2023-10-31 18:58 ` [PULL 07/27] qemu-img: add compression option to rebase subcommand Kevin Wolf
2023-10-31 18:58 ` [PULL 08/27] iotests: add tests for "qemu-img rebase" with compression Kevin Wolf
2023-10-31 18:59 ` [PULL 09/27] block: Fix locking in media change monitor commands Kevin Wolf
2023-10-31 18:59 ` [PULL 10/27] iotests: Test media change with iothreads Kevin Wolf
2023-10-31 18:59 ` [PULL 11/27] blockjob: drop AioContext lock before calling bdrv_graph_wrlock() Kevin Wolf
2023-10-31 18:59 ` [PULL 12/27] block: avoid potential deadlock during bdrv_graph_wrlock() in bdrv_close() Kevin Wolf
2023-10-31 18:59 ` [PULL 13/27] blockdev: mirror: avoid potential deadlock when using iothread Kevin Wolf
2023-10-31 18:59 ` [PULL 14/27] block: rename blk_io_plug_call() API to defer_call() Kevin Wolf
2023-10-31 18:59 ` [PULL 15/27] util/defer-call: move defer_call() to util/ Kevin Wolf
2023-10-31 18:59 ` [PULL 16/27] virtio: use defer_call() in virtio_irqfd_notify() Kevin Wolf
2023-10-31 18:59 ` [PULL 17/27] virtio-blk: remove batch notification BH Kevin Wolf
2023-10-31 18:59 ` [PULL 18/27] blockjob: introduce block-job-change QMP command Kevin Wolf
2023-10-31 18:59 ` [PULL 19/27] block/mirror: set actively_synced even after the job is ready Kevin Wolf
2023-10-31 18:59 ` [PULL 20/27] block/mirror: move dirty bitmap to filter Kevin Wolf
2023-10-31 18:59 ` [PULL 21/27] block/mirror: determine copy_to_target only once Kevin Wolf
2023-10-31 18:59 ` [PULL 22/27] mirror: implement mirror_change method Kevin Wolf
2023-10-31 18:59 ` [PULL 23/27] qapi/block-core: use JobType for BlockJobInfo's type Kevin Wolf
2023-10-31 18:59 ` [PULL 24/27] qapi/block-core: turn BlockJobInfo into a union Kevin Wolf
2023-10-31 18:59 ` [PULL 25/27] blockjob: query driver-specific info via a new 'query' driver method Kevin Wolf
2023-10-31 18:59 ` [PULL 26/27] mirror: return mirror-specific information upon query Kevin Wolf
2023-10-31 18:59 ` [PULL 27/27] iotests: add test for changing mirror's copy_mode Kevin Wolf
2023-10-31 23:31 ` [PULL 00/27] Block layer patches Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231031185918.346940-1-kwolf@redhat.com \
    --to=kwolf@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).