mbox

[PULL,00/14] Block layer patches

Message ID 20230904143643.259916-1-kwolf@redhat.com
State New
Headers show

Pull-request

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

Message

Kevin Wolf Sept. 4, 2023, 2:36 p.m. UTC
The following changes since commit 17780edd81d27fcfdb7a802efc870a99788bd2fc:

  Merge tag 'quick-fix-pull-request' of https://gitlab.com/bsdimp/qemu into staging (2023-08-31 10:06:29 -0400)

are available in the Git repository at:

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

for you to fetch changes up to bb86eb45297840c31dbc4df6bac02e50596f2376:

  block: Remove unnecessary variable in bdrv_block_device_info (2023-09-04 11:03:28 +0200)

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

- Process I/O in the current AioContext (instead of the BB AioContext)
- Optimise reqs_lock to make multiqueue actually scale
- iotests: Fix reference output for some tests after recent changes
- vpc: Avoid dynamic stack allocation
- Code cleanup, improved documentation

----------------------------------------------------------------
Dmitry Frolov (1):
      vmdk: Clean up bdrv_open_child() return value check

Fabiano Rosas (2):
      block: Remove bdrv_query_block_node_info
      block: Remove unnecessary variable in bdrv_block_device_info

Fiona Ebner (1):
      iotests: adapt test output for new qemu_cleanup() behavior

Hanna Czenczek (1):
      block: Be more verbose in create fallback

Kevin Wolf (1):
      qemu-img: Update documentation for compressed images

Michael Tokarev (1):
      qemu-img: omit errno value in error message

Peter Maydell (1):
      block/iscsi: Document why we use raw malloc()

Philippe Mathieu-Daudé (1):
      block/vpc: Avoid dynamic stack allocation

Stefan Hajnoczi (5):
      block: minimize bs->reqs_lock section in tracked_request_end()
      block: change reqs_lock to QemuMutex
      block: remove AIOCBInfo->get_aio_context()
      block-backend: process I/O in the current AioContext
      block-backend: process zoned requests in the current AioContext

 docs/tools/qemu-img.rst            | 19 ++++++++++++--
 include/block/aio.h                |  1 -
 include/block/block-global-state.h |  2 ++
 include/block/block-io.h           |  1 -
 include/block/block_int-common.h   |  2 +-
 include/block/qapi.h               |  3 ---
 block.c                            | 10 ++++---
 block/block-backend.c              | 35 +++++++------------------
 block/io.c                         | 53 +++++++++++++++++++-------------------
 block/iscsi.c                      |  1 +
 block/qapi.c                       | 32 ++---------------------
 block/vmdk.c                       |  2 +-
 block/vpc.c                        |  4 +--
 hw/nvme/ctrl.c                     |  7 -----
 qemu-img.c                         |  4 +--
 softmmu/dma-helpers.c              |  8 ------
 util/thread-pool.c                 |  8 ------
 tests/qemu-iotests/080.out         |  6 ++---
 tests/qemu-iotests/109.out         | 24 +++++++++++++++++
 tests/qemu-iotests/112.out         |  6 ++---
 tests/qemu-iotests/185             |  2 ++
 tests/qemu-iotests/185.out         |  4 +++
 tests/qemu-iotests/244.out         |  2 +-
 23 files changed, 107 insertions(+), 129 deletions(-)

Comments

Stefan Hajnoczi Sept. 6, 2023, 3:13 p.m. UTC | #1
test-bdrv-drain is failing. I think my coroutine wrapper patch might
be necessary:
https://gitlab.com/qemu-project/qemu/-/jobs/5029372308#L4907

I have dropped this patch series for the time being. Feel free to
remove my patches and send a new revision.

I will debug the test-bdrv-drain issue.

Stefan

On Mon, 4 Sept 2023 at 10:37, Kevin Wolf <kwolf@redhat.com> wrote:
>
> The following changes since commit 17780edd81d27fcfdb7a802efc870a99788bd2fc:
>
>   Merge tag 'quick-fix-pull-request' of https://gitlab.com/bsdimp/qemu into staging (2023-08-31 10:06:29 -0400)
>
> are available in the Git repository at:
>
>   https://repo.or.cz/qemu/kevin.git tags/for-upstream
>
> for you to fetch changes up to bb86eb45297840c31dbc4df6bac02e50596f2376:
>
>   block: Remove unnecessary variable in bdrv_block_device_info (2023-09-04 11:03:28 +0200)
>
> ----------------------------------------------------------------
> Block layer patches
>
> - Process I/O in the current AioContext (instead of the BB AioContext)
> - Optimise reqs_lock to make multiqueue actually scale
> - iotests: Fix reference output for some tests after recent changes
> - vpc: Avoid dynamic stack allocation
> - Code cleanup, improved documentation
>
> ----------------------------------------------------------------
> Dmitry Frolov (1):
>       vmdk: Clean up bdrv_open_child() return value check
>
> Fabiano Rosas (2):
>       block: Remove bdrv_query_block_node_info
>       block: Remove unnecessary variable in bdrv_block_device_info
>
> Fiona Ebner (1):
>       iotests: adapt test output for new qemu_cleanup() behavior
>
> Hanna Czenczek (1):
>       block: Be more verbose in create fallback
>
> Kevin Wolf (1):
>       qemu-img: Update documentation for compressed images
>
> Michael Tokarev (1):
>       qemu-img: omit errno value in error message
>
> Peter Maydell (1):
>       block/iscsi: Document why we use raw malloc()
>
> Philippe Mathieu-Daudé (1):
>       block/vpc: Avoid dynamic stack allocation
>
> Stefan Hajnoczi (5):
>       block: minimize bs->reqs_lock section in tracked_request_end()
>       block: change reqs_lock to QemuMutex
>       block: remove AIOCBInfo->get_aio_context()
>       block-backend: process I/O in the current AioContext
>       block-backend: process zoned requests in the current AioContext
>
>  docs/tools/qemu-img.rst            | 19 ++++++++++++--
>  include/block/aio.h                |  1 -
>  include/block/block-global-state.h |  2 ++
>  include/block/block-io.h           |  1 -
>  include/block/block_int-common.h   |  2 +-
>  include/block/qapi.h               |  3 ---
>  block.c                            | 10 ++++---
>  block/block-backend.c              | 35 +++++++------------------
>  block/io.c                         | 53 +++++++++++++++++++-------------------
>  block/iscsi.c                      |  1 +
>  block/qapi.c                       | 32 ++---------------------
>  block/vmdk.c                       |  2 +-
>  block/vpc.c                        |  4 +--
>  hw/nvme/ctrl.c                     |  7 -----
>  qemu-img.c                         |  4 +--
>  softmmu/dma-helpers.c              |  8 ------
>  util/thread-pool.c                 |  8 ------
>  tests/qemu-iotests/080.out         |  6 ++---
>  tests/qemu-iotests/109.out         | 24 +++++++++++++++++
>  tests/qemu-iotests/112.out         |  6 ++---
>  tests/qemu-iotests/185             |  2 ++
>  tests/qemu-iotests/185.out         |  4 +++
>  tests/qemu-iotests/244.out         |  2 +-
>  23 files changed, 107 insertions(+), 129 deletions(-)
>
>
Kevin Wolf Sept. 7, 2023, 8:17 a.m. UTC | #2
Am 06.09.2023 um 17:13 hat Stefan Hajnoczi geschrieben:
> test-bdrv-drain is failing. I think my coroutine wrapper patch might
> be necessary:
> https://gitlab.com/qemu-project/qemu/-/jobs/5029372308#L4907
> 
> I have dropped this patch series for the time being. Feel free to
> remove my patches and send a new revision.
> 
> I will debug the test-bdrv-drain issue.

Hm, I can't reproduce it. And even in CI only seems to have happened in
this one job (ubuntu-20.04-s390x-all).

If you think that it's caused by your patches, I can drop them for v2.

Kevin