mbox series

[PULL,v2,00/28] Block patches

Message ID 20201022112726.736757-1-stefanha@redhat.com
Headers show
Series Block patches | expand

Message

Stefan Hajnoczi Oct. 22, 2020, 11:26 a.m. UTC
The following changes since commit ac793156f650ae2d77834932d72224175ee69086:

  Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20201020-1' into staging (2020-10-20 21:11:35 +0100)

are available in the Git repository at:

  https://gitlab.com/stefanha/qemu.git tags/block-pull-request

for you to fetch changes up to 32a3fd65e7e3551337fd26bfc0e2f899d70c028c:

  iotests: add commit top->base cases to 274 (2020-10-22 09:55:39 +0100)

----------------------------------------------------------------
Pull request

v2:
 * Fix format string issues on 32-bit hosts [Peter]
 * Fix qemu-nbd.c CONFIG_POSIX ifdef issue [Eric]
 * Fix missing eventfd.h header on macOS [Peter]
 * Drop unreliable vhost-user-blk test (will send a new patch when ready) [Peter]

This pull request contains the vhost-user-blk server by Coiby Xu along with my
additions, block/nvme.c alignment and hardware error statistics by Philippe
Mathieu-Daudé, and bdrv_co_block_status_above() fixes by Vladimir
Sementsov-Ogievskiy.

----------------------------------------------------------------

Coiby Xu (6):
  libvhost-user: Allow vu_message_read to be replaced
  libvhost-user: remove watch for kick_fd when de-initialize vu-dev
  util/vhost-user-server: generic vhost user server
  block: move logical block size check function to a common utility
    function
  block/export: vhost-user block device backend server
  MAINTAINERS: Add vhost-user block device backend server maintainer

Philippe Mathieu-Daudé (1):
  block/nvme: Add driver statistics for access alignment and hw errors

Stefan Hajnoczi (16):
  util/vhost-user-server: s/fileds/fields/ typo fix
  util/vhost-user-server: drop unnecessary QOM cast
  util/vhost-user-server: drop unnecessary watch deletion
  block/export: consolidate request structs into VuBlockReq
  util/vhost-user-server: drop unused DevicePanicNotifier
  util/vhost-user-server: fix memory leak in vu_message_read()
  util/vhost-user-server: check EOF when reading payload
  util/vhost-user-server: rework vu_client_trip() coroutine lifecycle
  block/export: report flush errors
  block/export: convert vhost-user-blk server to block export API
  util/vhost-user-server: move header to include/
  util/vhost-user-server: use static library in meson.build
  qemu-storage-daemon: avoid compiling blockdev_ss twice
  block: move block exports to libblockdev
  block/export: add iothread and fixed-iothread options
  block/export: add vhost-user-blk multi-queue support

Vladimir Sementsov-Ogievskiy (5):
  block/io: fix bdrv_co_block_status_above
  block/io: bdrv_common_block_status_above: support include_base
  block/io: bdrv_common_block_status_above: support bs == base
  block/io: fix bdrv_is_allocated_above
  iotests: add commit top->base cases to 274

 MAINTAINERS                                |   9 +
 qapi/block-core.json                       |  24 +-
 qapi/block-export.json                     |  36 +-
 block/coroutines.h                         |   2 +
 block/export/vhost-user-blk-server.h       |  19 +
 contrib/libvhost-user/libvhost-user.h      |  21 +
 include/qemu/vhost-user-server.h           |  65 +++
 util/block-helpers.h                       |  19 +
 block/export/export.c                      |  37 +-
 block/export/vhost-user-blk-server.c       | 431 ++++++++++++++++++++
 block/io.c                                 | 132 +++---
 block/nvme.c                               |  27 ++
 block/qcow2.c                              |  16 +-
 contrib/libvhost-user/libvhost-user-glib.c |   2 +-
 contrib/libvhost-user/libvhost-user.c      |  15 +-
 hw/core/qdev-properties-system.c           |  31 +-
 nbd/server.c                               |   2 -
 qemu-nbd.c                                 |  21 +-
 softmmu/vl.c                               |   4 +
 stubs/blk-exp-close-all.c                  |   7 +
 tests/vhost-user-bridge.c                  |   2 +
 tools/virtiofsd/fuse_virtio.c              |   4 +-
 util/block-helpers.c                       |  46 +++
 util/vhost-user-server.c                   | 446 +++++++++++++++++++++
 block/export/meson.build                   |   3 +-
 contrib/libvhost-user/meson.build          |   1 +
 meson.build                                |  22 +-
 nbd/meson.build                            |   2 +
 storage-daemon/meson.build                 |   3 +-
 stubs/meson.build                          |   1 +
 tests/qemu-iotests/274                     |  20 +
 tests/qemu-iotests/274.out                 |  68 ++++
 util/meson.build                           |   4 +
 33 files changed, 1420 insertions(+), 122 deletions(-)
 create mode 100644 block/export/vhost-user-blk-server.h
 create mode 100644 include/qemu/vhost-user-server.h
 create mode 100644 util/block-helpers.h
 create mode 100644 block/export/vhost-user-blk-server.c
 create mode 100644 stubs/blk-exp-close-all.c
 create mode 100644 util/block-helpers.c
 create mode 100644 util/vhost-user-server.c

-- 
2.26.2

Comments

no-reply@patchew.org Oct. 22, 2020, 12:12 p.m. UTC | #1
Patchew URL: https://patchew.org/QEMU/20201022112726.736757-1-stefanha@redhat.com/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20201022112726.736757-1-stefanha@redhat.com
Subject: [PULL v2 00/28] Block patches

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 * [new tag]         patchew/20201022112726.736757-1-stefanha@redhat.com -> patchew/20201022112726.736757-1-stefanha@redhat.com
Switched to a new branch 'test'
070cb87 iotests: add commit top->base cases to 274
2381a9d block/io: fix bdrv_is_allocated_above
5314155 block/io: bdrv_common_block_status_above: support bs == base
824d6f6 block/io: bdrv_common_block_status_above: support include_base
8f13830 block/io: fix bdrv_co_block_status_above
384ba22 block/export: add vhost-user-blk multi-queue support
e10972d block/export: add iothread and fixed-iothread options
531d73b block: move block exports to libblockdev
13e8546 qemu-storage-daemon: avoid compiling blockdev_ss twice
9144c2b util/vhost-user-server: use static library in meson.build
9afaa76 util/vhost-user-server: move header to include/
1ded925 block/export: convert vhost-user-blk server to block export API
5bfa726 block/export: report flush errors
4565966 util/vhost-user-server: rework vu_client_trip() coroutine lifecycle
7d3e499 util/vhost-user-server: check EOF when reading payload
719ab6d util/vhost-user-server: fix memory leak in vu_message_read()
0afbb2c util/vhost-user-server: drop unused DevicePanicNotifier
9c3a1b30 block/export: consolidate request structs into VuBlockReq
d7f9068 util/vhost-user-server: drop unnecessary watch deletion
eb038288 util/vhost-user-server: drop unnecessary QOM cast
b6a8c41 util/vhost-user-server: s/fileds/fields/ typo fix
ef06bf4 MAINTAINERS: Add vhost-user block device backend server maintainer
3fed4d9 block/export: vhost-user block device backend server
5570b61 block: move logical block size check function to a common utility function
b03a5d2 util/vhost-user-server: generic vhost user server
a940b88 libvhost-user: remove watch for kick_fd when de-initialize vu-dev
b367b3a libvhost-user: Allow vu_message_read to be replaced
d61af88 block/nvme: Add driver statistics for access alignment and hw errors

=== OUTPUT BEGIN ===
1/28 Checking commit d61af8856e1d (block/nvme: Add driver statistics for access alignment and hw errors)
2/28 Checking commit b367b3a0c954 (libvhost-user: Allow vu_message_read to be replaced)
WARNING: Block comments use a leading /* on a separate line
#130: FILE: contrib/libvhost-user/libvhost-user.h:395:
+    /* @read_msg: custom method to read vhost-user message

total: 0 errors, 1 warnings, 139 lines checked

Patch 2/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
3/28 Checking commit a940b885ebfc (libvhost-user: remove watch for kick_fd when de-initialize vu-dev)
4/28 Checking commit b03a5d2b5417 (util/vhost-user-server: generic vhost user server)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#35: 
new file mode 100644

WARNING: line over 80 characters
#87: FILE: util/vhost-user-server.c:48:
+    /* When this is set vu_client_trip will stop new processing vhost-user message */

total: 0 errors, 2 warnings, 500 lines checked

Patch 4/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
5/28 Checking commit 5570b616e366 (block: move logical block size check function to a common utility function)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#85: 
new file mode 100644

total: 0 errors, 1 warnings, 129 lines checked

Patch 5/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
6/28 Checking commit 3fed4d90a1a6 (block/export: vhost-user block device backend server)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#30: 
new file mode 100644

WARNING: line over 80 characters
#476: FILE: block/export/vhost-user-blk-server.c:442:
+        blk_remove_aio_context_notifier(vu_block_device->backend, blk_aio_attached,

ERROR: g_free(NULL) is safe this check is probably not required
#536: FILE: block/export/vhost-user-blk-server.c:502:
+    if (vus->node_name) {
+        g_free(vus->node_name);

total: 1 errors, 2 warnings, 714 lines checked

Patch 6/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

7/28 Checking commit ef06bf498ce0 (MAINTAINERS: Add vhost-user block device backend server maintainer)
8/28 Checking commit b6a8c411bd0e (util/vhost-user-server: s/fileds/fields/ typo fix)
9/28 Checking commit eb03828873e5 (util/vhost-user-server: drop unnecessary QOM cast)
10/28 Checking commit d7f9068b77a3 (util/vhost-user-server: drop unnecessary watch deletion)
11/28 Checking commit 9c3a1b306de4 (block/export: consolidate request structs into VuBlockReq)
12/28 Checking commit 0afbb2c21554 (util/vhost-user-server: drop unused DevicePanicNotifier)
13/28 Checking commit 719ab6d69a12 (util/vhost-user-server: fix memory leak in vu_message_read())
14/28 Checking commit 7d3e49977472 (util/vhost-user-server: check EOF when reading payload)
15/28 Checking commit 4565966a008b (util/vhost-user-server: rework vu_client_trip() coroutine lifecycle)
16/28 Checking commit 5bfa726b1746 (block/export: report flush errors)
17/28 Checking commit 1ded9250e89e (block/export: convert vhost-user-blk server to block export API)
WARNING: line over 80 characters
#848: FILE: util/vhost-user-server.c:415:
+        error_setg(errp, "Only socket address types 'unix' and 'fd' are supported");

total: 0 errors, 1 warnings, 750 lines checked

Patch 17/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
18/28 Checking commit 9afaa765314b (util/vhost-user-server: move header to include/)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#46: 
rename from util/vhost-user-server.h

total: 0 errors, 1 warnings, 28 lines checked

Patch 18/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
19/28 Checking commit 9144c2b466f1 (util/vhost-user-server: use static library in meson.build)
20/28 Checking commit 13e85467224b (qemu-storage-daemon: avoid compiling blockdev_ss twice)
21/28 Checking commit 531d73bc6cf8 (block: move block exports to libblockdev)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#127: 
new file mode 100644

total: 0 errors, 1 warnings, 86 lines checked

Patch 21/28 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
22/28 Checking commit e10972d76a6d (block/export: add iothread and fixed-iothread options)
23/28 Checking commit 384ba2206146 (block/export: add vhost-user-blk multi-queue support)
24/28 Checking commit 8f13830a0ff0 (block/io: fix bdrv_co_block_status_above)
25/28 Checking commit 824d6f661b42 (block/io: bdrv_common_block_status_above: support include_base)
26/28 Checking commit 53141557f415 (block/io: bdrv_common_block_status_above: support bs == base)
27/28 Checking commit 2381a9dbe034 (block/io: fix bdrv_is_allocated_above)
28/28 Checking commit 070cb8780309 (iotests: add commit top->base cases to 274)
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20201022112726.736757-1-stefanha@redhat.com/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Peter Maydell Oct. 22, 2020, 2:09 p.m. UTC | #2
On Thu, 22 Oct 2020 at 12:27, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>

> The following changes since commit ac793156f650ae2d77834932d72224175ee69086:

>

>   Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20201020-1' into staging (2020-10-20 21:11:35 +0100)

>

> are available in the Git repository at:

>

>   https://gitlab.com/stefanha/qemu.git tags/block-pull-request

>

> for you to fetch changes up to 32a3fd65e7e3551337fd26bfc0e2f899d70c028c:

>

>   iotests: add commit top->base cases to 274 (2020-10-22 09:55:39 +0100)

>

> ----------------------------------------------------------------

> Pull request

>

> v2:

>  * Fix format string issues on 32-bit hosts [Peter]

>  * Fix qemu-nbd.c CONFIG_POSIX ifdef issue [Eric]

>  * Fix missing eventfd.h header on macOS [Peter]

>  * Drop unreliable vhost-user-blk test (will send a new patch when ready) [Peter]

>

> This pull request contains the vhost-user-blk server by Coiby Xu along with my

> additions, block/nvme.c alignment and hardware error statistics by Philippe

> Mathieu-Daudé, and bdrv_co_block_status_above() fixes by Vladimir

> Sementsov-Ogievskiy.


Fails to link on FreeBSD, NetBSD, OpenBSD, OSX:

ld: error: undefined symbol: blk_exp_vhost_user_blk
>>> referenced by export.c:58 (../src/block/export/export.c:58)

>>>               block_export_export.c.o:(blk_exp_add) in archive libblockdev.fa

c++: error: linker command failed with exit code 1 (use -v to see invocation)

thanks
-- PMM