[PULL 0/2] block: Fix iotests to respect configured Python binary

Kevin Wolf posted 2 patches 3 years, 3 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210129145240.34104-1-kwolf@redhat.com
Maintainers: Max Reitz <mreitz@redhat.com>, Kevin Wolf <kwolf@redhat.com>
tests/qemu-iotests/testrunner.py | 2 +-
tests/Makefile.include           | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
[PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Kevin Wolf 3 years, 3 months ago
The following changes since commit 5101d00d2f1138a73344dc4833587f76d7a5fa5c:

  Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.0-pull-request' into staging (2021-01-29 10:10:43 +0000)

are available in the Git repository at:

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

for you to fetch changes up to 4cea90be62f4f15a63e1a8f7d5d0958f79fdf290:

  tests/Makefile.include: export PYTHON for check-block.sh (2021-01-29 12:32:36 +0100)

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

- Fix iotests to respect configured Python binary

----------------------------------------------------------------
Vladimir Sementsov-Ogievskiy (2):
      iotests/testrunner: fix recognition of python tests
      tests/Makefile.include: export PYTHON for check-block.sh

 tests/qemu-iotests/testrunner.py | 2 +-
 tests/Makefile.include           | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)


Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Peter Maydell 3 years, 3 months ago
On Fri, 29 Jan 2021 at 14:52, Kevin Wolf <kwolf@redhat.com> wrote:
>
> The following changes since commit 5101d00d2f1138a73344dc4833587f76d7a5fa5c:
>
>   Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.0-pull-request' into staging (2021-01-29 10:10:43 +0000)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/kevin.git tags/for-upstream
>
> for you to fetch changes up to 4cea90be62f4f15a63e1a8f7d5d0958f79fdf290:
>
>   tests/Makefile.include: export PYTHON for check-block.sh (2021-01-29 12:32:36 +0100)
>
> ----------------------------------------------------------------
> Block layer patches:
>
> - Fix iotests to respect configured Python binary
>
> ----------------------------------------------------------------

This is definitely better so I'm going to apply it, but it seems
to reveal a pile of iotest failures on FreeBSD:

030   ...        [16:00:54]              ...                  ^M  TEST
  iotest-qcow2: 030 [fail]
QEMU          --
"/usr/home/qemu/qemu-test.C3dXvB/build/tests/qemu-iotests/../../qemu-system-sparc64"
-nodefaults -display
none -accel qtest
QEMU_IMG      --
"/usr/home/qemu/qemu-test.C3dXvB/build/tests/qemu-iotests/../../qemu-img"
QEMU_IO       --
"/usr/home/qemu/qemu-test.C3dXvB/build/tests/qemu-iotests/../../qemu-io"
--cache writeback --aio threads -
f qcow2
QEMU_NBD      --
"/usr/home/qemu/qemu-test.C3dXvB/build/tests/qemu-iotests/../../qemu-nbd"
IMGFMT        -- qcow2
IMGPROTO      -- file
PLATFORM      -- FreeBSD/amd64 freebsd 12.1-RELEASE
TEST_DIR      --
/usr/home/qemu/qemu-test.C3dXvB/build/tests/qemu-iotests/scratch
SOCK_DIR      -- /tmp/tmpo2iw5ic_
SOCKET_SCM_HELPER --
--- /home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030.out
+++ 030.out.bad
@@ -1,5 +1,631 @@
-...........................
+EEEEEEEEEEEEE.EEEEEEEEEEEEE
+======================================================================
+ERROR: test_enospc (__main__.TestEIO)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 659, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabil
ities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_ignore (__main__.TestEIO)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 659, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
++======================================================================
+ERROR: test_report (__main__.TestEIO)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 659, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_stop (__main__.TestEIO)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 659, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_enospc (__main__.TestENOSPC)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 809, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_overlapping_1 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_overlapping_2 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_overlapping_3 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
++======================================================================
+ERROR: test_overlapping_4 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_overlapping_5 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_stream_base_node_name (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
++======================================================================
+ERROR: test_stream_commit_1 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_stream_commit_2 (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 224, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
++======================================================================
+ERROR: test_stream_quorum (__main__.TestQuorum)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/iotests.py",
line 1229, in func_wrapper
+    func(test_case, *args, **kwargs)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 567, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_set_speed (__main__.TestSetSpeed)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 904, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_set_speed_invalid (__main__.TestSetSpeed)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 904, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
++======================================================================
+ERROR: test_device_not_found (__main__.TestSingleDrive)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 48, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server
+
+======================================================================
+ERROR: test_job_id_missing (__main__.TestSingleDrive)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/030",
line 48, in setUp
+    self.vm.launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 380, in launch
+    self._launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 411, in _launch
+    self._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qtest.py",
line 143, in _post_launch
+    super()._post_launch()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/machine.py",
line 326, in _post_launch
+    self._qmp.accept()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 246, in accept
+    return self.__negotiate_capabilities()
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 132, in __negotiate_capabilities
+    resp = self.cmd('qmp_capabilities')
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 278, in cmd
+    return self.cmd_obj(qmp_cmd)
+  File "/usr/home/qemu/qemu-test.C3dXvB/src/tests/qemu-iotests/../../python/qemu/qmp.py",
line 259, in cmd_obj
+    raise QMPConnectError("Unexpected empty reply from server")
+qemu.qmp.QMPConnectError: Unexpected empty reply from server

(and a lot more similar looking tracebacks)

Failures: 030 040 041 127 256

though the entire build goes on to succeed (which is probably
a test framework bug somewhere...)

thanks
-- PMM

Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Kevin Wolf 3 years, 3 months ago
Am 29.01.2021 um 17:13 hat Peter Maydell geschrieben:
> On Fri, 29 Jan 2021 at 14:52, Kevin Wolf <kwolf@redhat.com> wrote:
> >
> > The following changes since commit 5101d00d2f1138a73344dc4833587f76d7a5fa5c:
> >
> >   Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.0-pull-request' into staging (2021-01-29 10:10:43 +0000)
> >
> > are available in the Git repository at:
> >
> >   git://repo.or.cz/qemu/kevin.git tags/for-upstream
> >
> > for you to fetch changes up to 4cea90be62f4f15a63e1a8f7d5d0958f79fdf290:
> >
> >   tests/Makefile.include: export PYTHON for check-block.sh (2021-01-29 12:32:36 +0100)
> >
> > ----------------------------------------------------------------
> > Block layer patches:
> >
> > - Fix iotests to respect configured Python binary
> >
> > ----------------------------------------------------------------
> 
> This is definitely better so I'm going to apply it, but it seems
> to reveal a pile of iotest failures on FreeBSD:
> [...]
> Failures: 030 040 041 127 256

Hm... I did run 'make check-block' on a FreeBSD VM before sending the
pull request, but it turns out I ran it on the wrong branch. *sigh*

After rerunning it with the right one (and manually so that I get all
tests, not just those in 'make check-block'), however, while I'm seeing
some failures, my list of failing cases and your list are completely
disjoint:

    Failures: 115 125 145 182 286 298 300 migrate-bitmaps-postcopy-test
    migrate-bitmaps-test

All of these are test cases that are not run during 'make check-block',
so I would assume that they were already broken before.

So there seems to be something more specific to the environment that
made your test cases fail than just FreeBSD.

> though the entire build goes on to succeed (which is probably
> a test framework bug somewhere...)

This is not good, and it can easily be reproduced on Linux by simply
changing the reference output of a test so that it fails. 'check'
doesn't seem to return the right exit code any more.

Kevin


Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Vladimir Sementsov-Ogievskiy 3 years, 3 months ago
29.01.2021 20:17, Kevin Wolf wrote:
> Am 29.01.2021 um 17:13 hat Peter Maydell geschrieben:
>> On Fri, 29 Jan 2021 at 14:52, Kevin Wolf <kwolf@redhat.com> wrote:
>>>
>>> The following changes since commit 5101d00d2f1138a73344dc4833587f76d7a5fa5c:
>>>
>>>    Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.0-pull-request' into staging (2021-01-29 10:10:43 +0000)
>>>
>>> are available in the Git repository at:
>>>
>>>    git://repo.or.cz/qemu/kevin.git tags/for-upstream
>>>
>>> for you to fetch changes up to 4cea90be62f4f15a63e1a8f7d5d0958f79fdf290:
>>>
>>>    tests/Makefile.include: export PYTHON for check-block.sh (2021-01-29 12:32:36 +0100)
>>>
>>> ----------------------------------------------------------------
>>> Block layer patches:
>>>
>>> - Fix iotests to respect configured Python binary
>>>
>>> ----------------------------------------------------------------
>>
>> This is definitely better so I'm going to apply it, but it seems
>> to reveal a pile of iotest failures on FreeBSD:
>> [...]
>> Failures: 030 040 041 127 256
> 
> Hm... I did run 'make check-block' on a FreeBSD VM before sending the
> pull request, but it turns out I ran it on the wrong branch. *sigh*
> 
> After rerunning it with the right one (and manually so that I get all
> tests, not just those in 'make check-block'), however, while I'm seeing
> some failures, my list of failing cases and your list are completely
> disjoint:
> 
>      Failures: 115 125 145 182 286 298 300 migrate-bitmaps-postcopy-test
>      migrate-bitmaps-test
> 
> All of these are test cases that are not run during 'make check-block',
> so I would assume that they were already broken before.
> 
> So there seems to be something more specific to the environment that
> made your test cases fail than just FreeBSD.
> 
>> though the entire build goes on to succeed (which is probably
>> a test framework bug somewhere...)
> 
> This is not good, and it can easily be reproduced on Linux by simply
> changing the reference output of a test so that it fails. 'check'
> doesn't seem to return the right exit code any more.
> 

That's bad. I'll make a patch.


-- 
Best regards,
Vladimir

Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Peter Maydell 3 years, 3 months ago
On Fri, 29 Jan 2021 at 16:13, Peter Maydell <peter.maydell@linaro.org> wrote:
> This is definitely better so I'm going to apply it, but it seems
> to reveal a pile of iotest failures on FreeBSD:

> Failures: 030 040 041 127 256

It seems to consistently be these five. What do they have
in common ?

thanks
-- PMM

Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Kevin Wolf 3 years, 3 months ago
Am 02.02.2021 um 10:47 hat Peter Maydell geschrieben:
> On Fri, 29 Jan 2021 at 16:13, Peter Maydell <peter.maydell@linaro.org> wrote:
> > This is definitely better so I'm going to apply it, but it seems
> > to reveal a pile of iotest failures on FreeBSD:
> 
> > Failures: 030 040 041 127 256
> 
> It seems to consistently be these five. What do they have in common ?

That's a very good question, especially if you ask what they have in
common with each other, but with no other test.

With 030 040 041, your theory of running out of memory seemed to make a
lot of sense because these are the big block job tests. But 127 doesn't
fit in that group at all, it's a very small test on a tiny 64k image.
Unlike the other tests in your list that make use of our Python
framework, it's also just a shell script.

Other criteria that make 127 special like that it uses scsi and/or
iothreads don't apply to all other failed cases, but instead to other
cases that pass.

Are you still getting the same error message and is it the same for all
Python test cases? ("Unexpected empty reply from server") If QEMU had
been killed, there should be a message telling with which signal it
exited (if that code works correctly on NetBSD).

In any case, the output for 127 must be different because it doesn't use
the Python framework. Can you post the diff for that one?

Kevin


Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Peter Maydell 3 years, 3 months ago
On Tue, 2 Feb 2021 at 11:41, Kevin Wolf <kwolf@redhat.com> wrote:
> In any case, the output for 127 must be different because it doesn't use
> the Python framework. Can you post the diff for that one?

Here it is:

127   ...        [11:11:02]              ...                  ^M  TEST
  iotest-qcow2: 127 [fail]
QEMU          --
"/home/qemu/qemu-test.7IGXol/build/tests/qemu-iotests/../../qemu-system-xtensaeb"
-nodefaults -display none -accel qtest
QEMU_IMG      --
"/home/qemu/qemu-test.7IGXol/build/tests/qemu-iotests/../../qemu-img"
QEMU_IO       --
"/home/qemu/qemu-test.7IGXol/build/tests/qemu-iotests/../../qemu-io"
--cache writeback --aio threads -f qcow2
QEMU_NBD      --
"/home/qemu/qemu-test.7IGXol/build/tests/qemu-iotests/../../qemu-nbd"
IMGFMT        -- qcow2
IMGPROTO      -- file
PLATFORM      -- NetBSD/amd64 localhost 9.1
TEST_DIR      -- /home/qemu/qemu-test.7IGXol/build/tests/qemu-iotests/scratch
SOCK_DIR      -- /tmp/tmp_q9bk8l6
SOCKET_SCM_HELPER --
--- /home/qemu/qemu-test.7IGXol/src/tests/qemu-iotests/127.out
+++ 127.out.bad
@@ -5,29 +5,3 @@
 wrote 42/42 bytes at offset 0
 42 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 { 'execute': 'qmp_capabilities' }
-{"return": {}}
-{ 'execute': 'drive-mirror',
-       'arguments': {
-           'job-id': 'mirror',
-           'device': 'source',
-           'target': 'TEST_DIR/t.IMGFMT.overlay1',
-           'mode':   'existing',
-           'sync':   'top'
-       } }
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "created", "id":
"mirror"}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "running", "id":
"mirror"}}
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "ready", "id":
"mirror"}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "BLOCK_JOB_READY", "data": {"device": "mirror", "len": 65536,
"offset": 65536, "speed": 0, "type": "mirror"}}
-{ 'execute': 'block-job-complete',
-       'arguments': { 'device': 'mirror' } }
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "waiting", "id":
"mirror"}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "pending", "id":
"mirror"}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "BLOCK_JOB_COMPLETED", "data": {"device": "mirror", "len":
65536, "offset": 65536, "speed": 0, "type": "mirror"}}
-{ 'execute': 'quit' }
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "concluded", "id":
"mirror"}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "JOB_STATUS_CHANGE", "data": {"status": "null", "id":
"mirror"}}
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP},
"event": "SHUTDOWN", "data": {"guest": false, "reason":
"host-qmp-quit"}}
-*** done
133   ...        [11:11:02]              ...                  ^M  TEST
  iotest-qcow2: 133
134   ...        [11:11:03]              ...                  ^M  TEST
  iotest-qcow2: 134
(etc)

thanks
-- PMM

Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Vladimir Sementsov-Ogievskiy 3 years, 3 months ago
02.02.2021 14:41, Kevin Wolf wrote:
> Am 02.02.2021 um 10:47 hat Peter Maydell geschrieben:
>> On Fri, 29 Jan 2021 at 16:13, Peter Maydell <peter.maydell@linaro.org> wrote:
>>> This is definitely better so I'm going to apply it, but it seems
>>> to reveal a pile of iotest failures on FreeBSD:
>>
>>> Failures: 030 040 041 127 256
>>
>> It seems to consistently be these five. What do they have in common ?
> 
> That's a very good question, especially if you ask what they have in
> common with each other, but with no other test.
> 
> With 030 040 041, your theory of running out of memory seemed to make a
> lot of sense because these are the big block job tests. But 127 doesn't
> fit in that group at all, it's a very small test on a tiny 64k image.
> Unlike the other tests in your list that make use of our Python
> framework, it's also just a shell script.
> 
> Other criteria that make 127 special like that it uses scsi and/or
> iothreads don't apply to all other failed cases, but instead to other
> cases that pass.
> 
> Are you still getting the same error message and is it the same for all
> Python test cases? ("Unexpected empty reply from server") If QEMU had
> been killed, there should be a message telling with which signal it
> exited (if that code works correctly on NetBSD).
> 
> In any case, the output for 127 must be different because it doesn't use
> the Python framework. Can you post the diff for that one?
> 


I reproduced once (didn't save any logs). Now I patched check-block:

--- a/tests/check-block.sh
+++ b/tests/check-block.sh
@@ -77,7 +77,7 @@ export PYTHONUTF8=1
  
  ret=0
  for fmt in $format_list ; do
-    ${PYTHON} ./check -makecheck -$fmt $group || ret=1
+    ${PYTHON} ./check -d -$fmt 30 || ret=1
  done

to see some information when it fails and try to reproduce again.

Hmm.

I've run

   make -j9 vm-build-netbsd J=9

two hours ago, and it's still running.

it's now at position

....
[6353/6384] Linking target storage-daemon/qemu-storage-daemon
ld: /usr/lib/libc.so and /usr/lib/crt0.o: warning: multiple common of `environ'
ld: warning: libintl.so.1, needed by /usr/pkg/lib/libgnutls.so, may conflict with libintl.so.8
[6354/6384] Linking target qemu-system-rx
ld: /usr/lib/libc.so and /usr/lib/crt0.o: warning: multiple common of `environ'
ld: warning: libintl.so.1, needed by /usr/pkg/lib/libgio-2.0.so, may conflict with libintl.so.8
[6355/6384] Linking target qemu-system-s390x
ld: /usr/lib/libc.so and /usr/lib/crt0.o: warning: multiple common of `environ'
ld: warning: libintl.so.1, needed by /usr/pkg/lib/libgio-2.0.so, may conflict with libintl.so.8


Why is it so slow? Any options to make it faster?

-- 
Best regards,
Vladimir

Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Peter Maydell 3 years, 3 months ago
On Fri, 29 Jan 2021 at 16:13, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Fri, 29 Jan 2021 at 14:52, Kevin Wolf <kwolf@redhat.com> wrote:
> >
> > The following changes since commit 5101d00d2f1138a73344dc4833587f76d7a5fa5c:
> >
> >   Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.0-pull-request' into staging (2021-01-29 10:10:43 +0000)
> >
> > are available in the Git repository at:
> >
> >   git://repo.or.cz/qemu/kevin.git tags/for-upstream
> >
> > for you to fetch changes up to 4cea90be62f4f15a63e1a8f7d5d0958f79fdf290:
> >
> >   tests/Makefile.include: export PYTHON for check-block.sh (2021-01-29 12:32:36 +0100)
> >
> > ----------------------------------------------------------------
> > Block layer patches:
> >
> > - Fix iotests to respect configured Python binary
> >
> > ----------------------------------------------------------------
>
> This is definitely better so I'm going to apply it, but it seems
> to reveal a pile of iotest failures on FreeBSD:

These seem to be intermittent -- a rerun was fine. (I have a theory
that the test framework handles "QEMU process died due to the VM
running out of memory" and similar kinds of error very badly:
I semi-regularly find that when the OpenBSD, FreeBSD and NetBSD
VM jobs are running in parallel on the same machine that one
might fail but succeed on a rerun.)

Applied, thanks.

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

-- PMM

Re: [PULL 0/2] block: Fix iotests to respect configured Python binary
Posted by Peter Maydell 3 years, 3 months ago
On Fri, 29 Jan 2021 at 17:22, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Fri, 29 Jan 2021 at 16:13, Peter Maydell <peter.maydell@linaro.org> wrote:
> >
> > On Fri, 29 Jan 2021 at 14:52, Kevin Wolf <kwolf@redhat.com> wrote:
> > > ----------------------------------------------------------------
> > > Block layer patches:
> > >
> > > - Fix iotests to respect configured Python binary
> > >
> > > ----------------------------------------------------------------
> >
> > This is definitely better so I'm going to apply it, but it seems
> > to reveal a pile of iotest failures on FreeBSD:
>
> These seem to be intermittent -- a rerun was fine.

Intermittent, but not very intermittent -- I've just run about
three lots of the NetBSD vm test run in a row trying to get a
pass through, but something in iotests dies every time :-(

thanks
-- PMM