[PULL 00/14] bitmaps patches for 2020-08-21

Eric Blake posted 14 patches 3 years, 8 months ago
Test docker-quick@centos7 passed
Test checkpatch passed
Test FreeBSD failed
Test docker-mingw@fedora passed
Failed in applying to current master (apply log)
qapi/migration.json                | 104 ++++-
migration/migration.h              |   3 +
migration/block-dirty-bitmap.c     | 410 +++++++++++++++++---
migration/migration.c              |  30 ++
monitor/hmp-cmds.c                 |  30 ++
tests/qemu-iotests/300             | 593 +++++++++++++++++++++++++++++
tests/qemu-iotests/300.out         |   5 +
tests/qemu-iotests/303             |  63 +++
tests/qemu-iotests/303.out         | 158 ++++++++
tests/qemu-iotests/group           |   2 +
tests/qemu-iotests/iotests.py      |  18 +-
tests/qemu-iotests/qcow2.py        |  18 +-
tests/qemu-iotests/qcow2_format.py | 215 ++++++++++-
13 files changed, 1566 insertions(+), 83 deletions(-)
create mode 100755 tests/qemu-iotests/300
create mode 100644 tests/qemu-iotests/300.out
create mode 100755 tests/qemu-iotests/303
create mode 100644 tests/qemu-iotests/303.out
[PULL 00/14] bitmaps patches for 2020-08-21
Posted by Eric Blake 3 years, 8 months ago
The following changes since commit 7fd51e68c34fcefdb4d6fd646ed3346f780f89f4:

  Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2020-08-21 12:42:49 +0100)

are available in the Git repository at:

  https://repo.or.cz/qemu/ericb.git tags/pull-bitmaps-2020-08-21

for you to fetch changes up to cb5c6cd2dc984812f560fbe41f57a6bfc34d8708:

  iotests: Test node/bitmap aliases during migration (2020-08-21 08:56:09 -0500)

----------------------------------------------------------------
bitmaps patches for 2020-08-21

- Andrey Shinkevich: Enhance qcow2.py for iotest inspection of qcow2 images
- Max Reitz: Add block-bitmap-mapping migration parameter

----------------------------------------------------------------
Andrey Shinkevich (11):
      iotests: add test for QCOW2 header dump
      qcow2_format.py: make printable data an extension class member
      qcow2_format.py: change Qcow2BitmapExt initialization method
      qcow2_format.py: dump bitmap flags in human readable way.
      qcow2_format.py: Dump bitmap directory information
      qcow2_format.py: pass cluster size to substructures
      qcow2_format.py: Dump bitmap table serialized entries
      qcow2.py: Introduce '-j' key to dump in JSON format
      qcow2_format.py: collect fields to dump in JSON format
      qcow2_format.py: support dumping metadata in JSON format
      iotests: dump QCOW2 header in JSON in #303

Max Reitz (3):
      migration: Add block-bitmap-mapping parameter
      iotests.py: Let wait_migration() return on failure
      iotests: Test node/bitmap aliases during migration

 qapi/migration.json                | 104 ++++++-
 migration/migration.h              |   3 +
 migration/block-dirty-bitmap.c     | 410 +++++++++++++++++++++----
 migration/migration.c              |  30 ++
 monitor/hmp-cmds.c                 |  30 ++
 tests/qemu-iotests/300             | 593 +++++++++++++++++++++++++++++++++++++
 tests/qemu-iotests/300.out         |   5 +
 tests/qemu-iotests/303             |  63 ++++
 tests/qemu-iotests/303.out         | 158 ++++++++++
 tests/qemu-iotests/group           |   2 +
 tests/qemu-iotests/iotests.py      |  18 +-
 tests/qemu-iotests/qcow2.py        |  18 +-
 tests/qemu-iotests/qcow2_format.py | 215 ++++++++++++--
 13 files changed, 1566 insertions(+), 83 deletions(-)
 create mode 100755 tests/qemu-iotests/300
 create mode 100644 tests/qemu-iotests/300.out
 create mode 100755 tests/qemu-iotests/303
 create mode 100644 tests/qemu-iotests/303.out

Andrey Shinkevich (11):
  iotests: add test for QCOW2 header dump
  qcow2_format.py: make printable data an extension class member
  qcow2_format.py: change Qcow2BitmapExt initialization method
  qcow2_format.py: dump bitmap flags in human readable way.
  qcow2_format.py: Dump bitmap directory information
  qcow2_format.py: pass cluster size to substructures
  qcow2_format.py: Dump bitmap table serialized entries
  qcow2.py: Introduce '-j' key to dump in JSON format
  qcow2_format.py: collect fields to dump in JSON format
  qcow2_format.py: support dumping metadata in JSON format
  iotests: dump QCOW2 header in JSON in #303

Max Reitz (3):
  migration: Add block-bitmap-mapping parameter
  iotests.py: Let wait_migration() return on failure
  iotests: Test node/bitmap aliases during migration

 qapi/migration.json                | 104 ++++-
 migration/migration.h              |   3 +
 migration/block-dirty-bitmap.c     | 410 +++++++++++++++++---
 migration/migration.c              |  30 ++
 monitor/hmp-cmds.c                 |  30 ++
 tests/qemu-iotests/300             | 593 +++++++++++++++++++++++++++++
 tests/qemu-iotests/300.out         |   5 +
 tests/qemu-iotests/303             |  63 +++
 tests/qemu-iotests/303.out         | 158 ++++++++
 tests/qemu-iotests/group           |   2 +
 tests/qemu-iotests/iotests.py      |  18 +-
 tests/qemu-iotests/qcow2.py        |  18 +-
 tests/qemu-iotests/qcow2_format.py | 215 ++++++++++-
 13 files changed, 1566 insertions(+), 83 deletions(-)
 create mode 100755 tests/qemu-iotests/300
 create mode 100644 tests/qemu-iotests/300.out
 create mode 100755 tests/qemu-iotests/303
 create mode 100644 tests/qemu-iotests/303.out

-- 
2.28.0


Re: [PULL 00/14] bitmaps patches for 2020-08-21
Posted by Peter Maydell 3 years, 8 months ago
On Fri, 21 Aug 2020 at 15:12, Eric Blake <eblake@redhat.com> wrote:
> ----------------------------------------------------------------
> bitmaps patches for 2020-08-21
>
> - Andrey Shinkevich: Enhance qcow2.py for iotest inspection of qcow2 images
> - Max Reitz: Add block-bitmap-mapping migration parameter

iotest 030 failure on ppc64be:

  TEST    iotest-qcow2: 030 [fail]
QEMU          --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-system-ppc64"
-nodefaults -display none -accel qtest
QEMU_IMG      -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
QEMU_IO       --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
writeback --aio threads -f qcow2
QEMU_NBD      -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
IMGFMT        -- qcow2 (compat=1.1)
IMGPROTO      -- file
PLATFORM      -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
TEST_DIR      -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
SOCK_DIR      -- /tmp/tmp.2XM0XBi18t
SOCKET_SCM_HELPER --
/home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper

--- /home/pm215/qemu/tests/qemu-iotests/030.out 2019-07-15
15:12:04.941863802 +0000
+++ /home/pm215/qemu/build/all/tests/qemu-iotests/030.out.bad
2020-08-22 19:00:37.756291193 +0000
@@ -1,5 +1,17 @@
-...........................
+.............F.............
+======================================================================
+FAIL: test_stream_parallel (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "030", line 251, in test_stream_parallel
+    self.assert_qmp(result, 'return', {})
+  File "/home/pm215/qemu/tests/qemu-iotests/iotests.py", line 888, in
assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/pm215/qemu/tests/qemu-iotests/iotests.py", line 862, in dictpath
+    self.fail(f'failed path traversal for "{path}" in "{d}"')
+AssertionError: failed path traversal for "return" in "{'error':
{'class': 'DeviceNotActive', 'desc': "Block job 'stream-node8' not
found"}}"
+
 ----------------------------------------------------------------------
 Ran 27 tests

-OK
+FAILED (failures=1)

Intermittent; it passed second time around, so I'm guessing that this
is unrelated to this particular pullreq, and I've applied it.

Can we do something about iotest 030 ? It seems to be
causing intermittent failures for me still :-(


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.2
for any user-visible changes.

-- PMM