Message ID | 20240816153747.319161-1-thuth@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | .gitlab-ci.d/windows.yml: Disable the qtests in the MSYS2 job | expand |
Thomas Huth <thuth@redhat.com> writes: > The qtests are broken since a while in the MSYS2 job in the gitlab-CI, > likely due to some changes in the MSYS2 environment. So far nobody has > neither a clue what's going wrong here, nor an idea how to fix this > (in fact most QEMU developers even don't have a Windows environment > available for properly analyzing this problem), so let's disable the > qtests here again to get at least the test coverage for the compilation > and unit tests back to the CI. > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > .gitlab-ci.d/windows.yml | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml > index a83f23a786..9f3112f010 100644 > --- a/.gitlab-ci.d/windows.yml > +++ b/.gitlab-ci.d/windows.yml > @@ -23,6 +23,8 @@ msys2-64bit: > # for this job, because otherwise the build could not complete within > # the project timeout. > CONFIGURE_ARGS: --target-list=sparc-softmmu --without-default-devices -Ddebug=false -Doptimization=0 > + # The qtests are broken in the msys2 job on gitlab, so disable them: > + TEST_ARGS: --no-suite qtest Should we create an issue in the tracker to make it more visible for potential windows hackers? > # The Windows git is a bit older so override the default > GIT_FETCH_EXTRA_FLAGS: --no-tags --prune --quiet > artifacts:
On 16/08/2024 18.21, Alex Bennée wrote: > Thomas Huth <thuth@redhat.com> writes: > >> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >> likely due to some changes in the MSYS2 environment. So far nobody has >> neither a clue what's going wrong here, nor an idea how to fix this >> (in fact most QEMU developers even don't have a Windows environment >> available for properly analyzing this problem), so let's disable the >> qtests here again to get at least the test coverage for the compilation >> and unit tests back to the CI. >> >> Signed-off-by: Thomas Huth <thuth@redhat.com> >> --- >> .gitlab-ci.d/windows.yml | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >> index a83f23a786..9f3112f010 100644 >> --- a/.gitlab-ci.d/windows.yml >> +++ b/.gitlab-ci.d/windows.yml >> @@ -23,6 +23,8 @@ msys2-64bit: >> # for this job, because otherwise the build could not complete within >> # the project timeout. >> CONFIGURE_ARGS: --target-list=sparc-softmmu --without-default-devices -Ddebug=false -Doptimization=0 >> + # The qtests are broken in the msys2 job on gitlab, so disable them: >> + TEST_ARGS: --no-suite qtest > > Should we create an issue in the tracker to make it more visible for > potential windows hackers? The only two I am aware of are already on CC: ... so not sure whether it's worth the effort...? Thomas
On 16/8/24 17:37, Thomas Huth wrote: > The qtests are broken since a while in the MSYS2 job in the gitlab-CI, > likely due to some changes in the MSYS2 environment. So far nobody has > neither a clue what's going wrong here, nor an idea how to fix this > (in fact most QEMU developers even don't have a Windows environment > available for properly analyzing this problem), so let's disable the > qtests here again to get at least the test coverage for the compilation > and unit tests back to the CI. > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > .gitlab-ci.d/windows.yml | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml > index a83f23a786..9f3112f010 100644 > --- a/.gitlab-ci.d/windows.yml > +++ b/.gitlab-ci.d/windows.yml > @@ -23,6 +23,8 @@ msys2-64bit: > # for this job, because otherwise the build could not complete within > # the project timeout. > CONFIGURE_ARGS: --target-list=sparc-softmmu --without-default-devices -Ddebug=false -Doptimization=0 > + # The qtests are broken in the msys2 job on gitlab, so disable them: > + TEST_ARGS: --no-suite qtest Then building system emulation is pointless, isn't it? Could we at least test the block tools? qemu-img seems to work: # ./qemu-img.exe --help qemu-img version 9.0.92 (v9.1.0-rc2) Copyright (c) 2003-2024 Fabrice Bellard and the QEMU Project developers usage: qemu-img [standard options] command [command options] QEMU disk image utility '-h', '--help' display this help and exit '-V', '--version' output version information and exit ... It doesn't work currently: Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build # make check-help Regression testing targets: make check Run block, qapi-schema, unit, softfloat, qtest and decodetree tests make bench Run speed tests Individual test suites: make check-qtest-TARGET Run qtest tests for given target make check-qtest Run qtest tests make check-unit Run qobject tests make check-qapi-schema Run QAPI schema tests make check-block Run block tests make check-avocado Run avocado (integration) tests for currently configured targets make check-report.junit.xml Generates an aggregated XML test report make check-venv Creates a Python venv for tests make check-clean Clean the tests and related data The following are useful for CI builds make check-build Build most test binaries make get-vm-images Downloads all images used by avocado tests, according to configured targets (~350 MB each, 1.5 GB max) The variable SPEED can be set to control the gtester speed setting. Default options are -k and (for make V=1) --verbose; they can be changed with variable GTESTER_OPTIONS. Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build # make check-block make: *** No rule to make target 'check-block'. Stop. Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build # FWIW when the test is stuck and I hit ^C I get: Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build # make check-qtest [1/6] Generating qemu-version.h with a custom command (wrapped by meson to capture output) /c/Users/Administrator/qemu/build/pyvenv/bin/meson test --no-rebuild -t 1 --num-processes 1 --print-errorlogs --suite qtest ERROR: The process "3428" not found./ qtest-sparc/qom-test 14/900.0s 1/13 qemu:qtest+qtest-sparc / qtest-sparc/qom-test INTERRUPT 14.42s (exit status 3221225786 or signal 3221225658 SIGinvalid) >>> PATH=C:/Users/Administrator/msys64/ucrt64/bin;C:\Users\Administrator\msys64\ucrt64\bin;C:\Users\Administrator\msys64\usr\local\bin;C:\Users\Administrator\msys64\usr\bin;C:\Users\Administrator\msys64\usr\bin;C:\Windows\System32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Users\Administrator\msys64\usr\bin\site_perl;C:\Users\Administrator\msys64\usr\bin\vendor_perl;C:\Users\Administrator\msys64\usr\bin\core_perl PYTHON=C:/Users/Administrator/qemu/build/pyvenv/bin/python3.exe QTEST_QEMU_BINARY=./qemu-system-sparc QTEST_QEMU_IMG=./qemu-img G_TEST_DBUS_DAEMON=C:/Users/Administrator/qemu/tests/dbus-vmstate-daemon.sh MALLOC_PERTURB_=164 C:/Users/Administrator/qemu/build/tests/qtest/qom-test.exe --tap -k ERROR: The process "860" not found.qtest-sparc/device-introspect-test 4/720.0s 2/13 qemu:qtest+qtest-sparc / qtest-sparc/cdrom-test SKIP 0.07s Traceback (most recent call last): File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 190, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 641, in run_until_complete self.run_forever() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/windows_events.py", line 321, in run_forever super().run_forever() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 608, in run_forever self._run_once() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 1898, in _run_once event_list = self._selector.select(timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/windows_events.py", line 444, in select self._poll(timeout) File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/windows_events.py", line 825, in _poll status = _overlapped.GetQueuedCompletionStatus(self._iocp, ms) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 157, in _on_sigint raise KeyboardInterrupt() KeyboardInterrupt During handling of the above exception, another exception occurred: Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "C:/Users/Administrator/qemu/build/pyvenv/bin/meson.exe/__main__.py", line 7, in <module> File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mesonmain.py", line 294, in main return run(sys.argv[1:], launcher) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mesonmain.py", line 285, in run return CommandLineParser().run(args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mesonmain.py", line 194, in run return options.run_func(options) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py", line 2182, in run return th.doit() ^^^^^^^^^ File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py", line 1821, in doit self.run_tests(runners) File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py", line 1994, in run_tests asyncio.run(self._run_tests(runners)) File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 189, in run with Runner(debug=debug) as runner: File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 63, in __exit__ self.close() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 71, in close _cancel_all_tasks(loop) File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/runners.py", line 201, in _cancel_all_tasks loop.run_until_complete(tasks.gather(*to_cancel, return_exceptions=True)) File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 641, in run_until_complete self.run_forever() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/windows_events.py", line 321, in run_forever super().run_forever() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 608, in run_forever self._run_once() File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 1898, in _run_once event_list = self._selector.select(timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/windows_events.py", line 444, in select self._poll(timeout) File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/windows_events.py", line 825, in _poll status = _overlapped.GetQueuedCompletionStatus(self._iocp, ms) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ KeyboardInterrupt Exception ignored in: <coroutine object TestHarness._run_tests at 0x000001b004a1bca0> Traceback (most recent call last): File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py", line 2101, in _run_tests File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py", line 725, in finish File "C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py", line 605, in report_progress File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/locks.py", line 213, in wait asyncio.exceptions.CancelledError: Task was destroyed but it is pending! task: <Task cancelling name='Task-1' coro=<TestHarness._run_tests() done, defined at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:2006> wait_for=<Task pending name='Task-23' coro=<TestHarness._run_tests.<locals>.run_test() running at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:2018> wait_for=<Future pending cb=[Task.task_wakeup()]> cb=[TestHarness._run_tests.<locals>.test_done() at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:2024, Task.task_wakeup()]> cb=[gather.<locals>._done_callback() at C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/tasks.py:764]> Task was destroyed but it is pending! task: <Task pending name='Task-23' coro=<TestHarness._run_tests.<locals>.run_test() running at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:2018> wait_for=<Future pending cb=[Task.task_wakeup()]> cb=[TestHarness._run_tests.<locals>.test_done() at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:2024, Task.task_wakeup()]> Exception ignored in: <coroutine object Queue.get at 0x000001b00524bca0> Traceback (most recent call last): File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/queues.py", line 160, in get File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 762, in call_soon File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 520, in _check_closed RuntimeError: Event loop is closed Task was destroyed but it is pending! task: <Task pending name='Task-25' coro=<TestRunTAP.parse() done, defined at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:1087> wait_for=<Future cancelled>> Task was destroyed but it is pending! task: <Task pending name='Task-26' coro=<TestSubprocess.communicate.<locals>.collect_stdo() running at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:1303> wait_for=<Future pending cb=[Task.task_wakeup()]>> Task was destroyed but it is pending! task: <Task pending name='Task-27' coro=<TestSubprocess.communicate.<locals>.collect_stde() running at C:/Users/Administrator/qemu/build/pyvenv/lib/python3.11/site-packages/mesonbuild/mtest.py:1308> wait_for=<Future pending cb=[Task.task_wakeup()]>> Exception ignored in: <function BaseSubprocessTransport.__del__ at 0x000001b003dc62a0> Traceback (most recent call last): File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_subprocess.py", line 126, in __del__ File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_subprocess.py", line 104, in close File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/proactor_events.py", line 109, in close File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 762, in call_soon File "C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/base_events.py", line 520, in _check_closed RuntimeError: Event loop is closed Task was destroyed but it is pending! task: <Task pending name='Task-28' coro=<Process.wait() running at C:/Users/Administrator/msys64/ucrt64/lib/python3.11/asyncio/subprocess.py:137> wait_for=<Future pending cb=[Task.task_wakeup()]>> make: *** [Makefile.mtest:26: do-meson-check] Interrupt Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build #
On 16/08/2024 18.34, Philippe Mathieu-Daudé wrote: > On 16/8/24 17:37, Thomas Huth wrote: >> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >> likely due to some changes in the MSYS2 environment. So far nobody has >> neither a clue what's going wrong here, nor an idea how to fix this >> (in fact most QEMU developers even don't have a Windows environment >> available for properly analyzing this problem), so let's disable the >> qtests here again to get at least the test coverage for the compilation >> and unit tests back to the CI. >> >> Signed-off-by: Thomas Huth <thuth@redhat.com> >> --- >> .gitlab-ci.d/windows.yml | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >> index a83f23a786..9f3112f010 100644 >> --- a/.gitlab-ci.d/windows.yml >> +++ b/.gitlab-ci.d/windows.yml >> @@ -23,6 +23,8 @@ msys2-64bit: >> # for this job, because otherwise the build could not complete within >> # the project timeout. >> CONFIGURE_ARGS: --target-list=sparc-softmmu >> --without-default-devices -Ddebug=false -Doptimization=0 >> + # The qtests are broken in the msys2 job on gitlab, so disable them: >> + TEST_ARGS: --no-suite qtest > > Then building system emulation is pointless, isn't it? We're still running the unit tests and some others. > Could we at least test the block tools? qemu-img seems to work: > > # ./qemu-img.exe --help > qemu-img version 9.0.92 (v9.1.0-rc2) > Copyright (c) 2003-2024 Fabrice Bellard and the QEMU Project developers > usage: qemu-img [standard options] command [command options] > QEMU disk image utility > > '-h', '--help' display this help and exit > '-V', '--version' output version information and exit > ... > > It doesn't work currently: ... > Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build > # make check-block > make: *** No rule to make target 'check-block'. Stop. check-block never worked on Windows as far as I know, it's disabled in the meson.build there: if not have_tools or host_os == 'windows' subdir_done() endif Thomas
On 16/8/24 18:40, Thomas Huth wrote: > On 16/08/2024 18.34, Philippe Mathieu-Daudé wrote: >> On 16/8/24 17:37, Thomas Huth wrote: >>> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >>> likely due to some changes in the MSYS2 environment. So far nobody has >>> neither a clue what's going wrong here, nor an idea how to fix this >>> (in fact most QEMU developers even don't have a Windows environment >>> available for properly analyzing this problem), so let's disable the >>> qtests here again to get at least the test coverage for the compilation >>> and unit tests back to the CI. >>> >>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>> --- >>> .gitlab-ci.d/windows.yml | 2 ++ >>> 1 file changed, 2 insertions(+) >>> >>> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >>> index a83f23a786..9f3112f010 100644 >>> --- a/.gitlab-ci.d/windows.yml >>> +++ b/.gitlab-ci.d/windows.yml >>> @@ -23,6 +23,8 @@ msys2-64bit: >>> # for this job, because otherwise the build could not complete >>> within >>> # the project timeout. >>> CONFIGURE_ARGS: --target-list=sparc-softmmu >>> --without-default-devices -Ddebug=false -Doptimization=0 >>> + # The qtests are broken in the msys2 job on gitlab, so disable >>> them: >>> + TEST_ARGS: --no-suite qtest >> >> Then building system emulation is pointless, isn't it? > > We're still running the unit tests and some others. I tried to configure with '--disable-system' and the same tests are run: [1107/1109] Linking target tests/unit/test-vmstate.exe [1108/1109] Linking target tests/unit/test-yank.exe [1109/1109] Linking target tests/unit/test-qdev-global-props.exe /c/Users/Administrator/qemu/build/pyvenv/bin/meson test --no-rebuild -t 1 --num-processes 1 --print-errorlogs --suite unit 1/93 qemu:unit / test-crypto-block OK 0.22s 1 subtests passed 2/93 qemu:unit / test-aio-multithread OK 6.94s 5 subtests passed 3/93 qemu:unit / test-replication OK 1.55s 8 subtests passed 4/93 qemu:unit / test-bufferiszero OK 9.70s 1 subtests passed 5/93 qemu:unit / check-block-qdict OK 0.09s 10 subtests passed 6/93 qemu:unit / check-qdict OK 0.06s 15 subtests passed 7/93 qemu:unit / check-qnum OK 0.08s 8 subtests passed 8/93 qemu:unit / check-qstring OK 0.08s 4 subtests passed 9/93 qemu:unit / check-qlist OK 0.06s 4 subtests passed 10/93 qemu:unit / check-qnull OK 0.06s 2 subtests passed 11/93 qemu:unit / check-qobject OK 0.08s 7 subtests passed 12/93 qemu:unit / check-qjson OK 0.31s 31 subtests passed 13/93 qemu:unit / check-qlit OK 0.09s 2 subtests passed 14/93 qemu:unit / test-error-report OK 0.42s 6 subtests passed 15/93 qemu:unit / test-qobject-output-visitor OK 0.09s 16 subtests passed 16/93 qemu:unit / test-clone-visitor OK 0.06s 7 subtests passed 17/93 qemu:unit / test-qobject-input-visitor OK 0.08s 42 subtests passed 18/93 qemu:unit / test-forward-visitor OK 0.08s 7 subtests passed 19/93 qemu:unit / test-string-input-visitor OK 0.11s 8 subtests passed 20/93 qemu:unit / test-string-output-visitor OK 0.08s 14 subtests passed 21/93 qemu:unit / test-visitor-serialization OK 0.08s 156 subtests passed 22/93 qemu:unit / test-bitmap OK 0.08s 2 subtests passed 23/93 qemu:unit / test-resv-mem OK 0.09s 3 subtests passed 24/93 qemu:unit / test-x86-topo OK 0.06s 1 subtests passed 25/93 qemu:unit / test-cutils OK 0.08s 179 subtests passed 26/93 qemu:unit / test-div128 OK 0.08s 2 subtests passed 27/93 qemu:unit / test-shift128 OK 0.06s 2 subtests passed 28/93 qemu:unit / test-mul64 OK 0.08s 2 subtests passed 29/93 qemu:unit / test-int128 OK 0.08s 11 subtests passed 30/93 qemu:unit / rcutorture OK 2.34s 2 subtests passed 31/93 qemu:unit / test-rcu-list OK 4.20s 3 subtests passed 32/93 qemu:unit / test-rcu-simpleq OK 4.20s 3 subtests passed 33/93 qemu:unit / test-rcu-tailq OK 4.20s 3 subtests passed 34/93 qemu:unit / test-rcu-slist OK 4.20s 3 subtests passed 35/93 qemu:unit / test-qdist OK 0.09s 8 subtests passed 36/93 qemu:unit / test-qht OK 1.94s 2 subtests passed 37/93 qemu:unit / test-qtree OK 0.09s 4 subtests passed 38/93 qemu:unit / test-bitops OK 0.08s 6 subtests passed 39/93 qemu:unit / test-bitcnt OK 0.06s 4 subtests passed 40/93 qemu:unit / test-qgraph OK 0.06s 23 subtests passed 41/93 qemu:unit / check-qom-interface OK 0.09s 2 subtests passed 42/93 qemu:unit / check-qom-proplist OK 0.08s 9 subtests passed 43/93 qemu:unit / test-qemu-opts OK 0.06s 19 subtests passed 44/93 qemu:unit / test-keyval OK 0.08s 13 subtests passed 45/93 qemu:unit / test-logging OK 0.17s 4 subtests passed 46/93 qemu:unit / test-qapi-util OK 0.06s 2 subtests passed 47/93 qemu:unit / test-interval-tree OK 0.08s 6 subtests passed 48/93 qemu:unit / test-qmp-event OK 0.16s 6 subtests passed 49/93 qemu:unit / test-coroutine OK 0.28s 12 subtests passed 50/93 qemu:unit / test-aio OK 3.88s 27 subtests passed 51/93 qemu:unit / test-throttle OK 0.33s 17 subtests passed 52/93 qemu:unit / test-thread-pool OK 4.34s 6 subtests passed 53/93 qemu:unit / test-hbitmap OK 0.55s 40 subtests passed 54/93 qemu:unit / test-bdrv-drain OK 1.67s 30 subtests passed 55/93 qemu:unit / test-bdrv-graph-mod OK 0.31s 5 subtests passed 56/93 qemu:unit / test-blockjob OK 0.33s 8 subtests passed 57/93 qemu:unit / test-blockjob-txn OK 0.42s 7 subtests passed 58/93 qemu:unit / test-block-backend OK 0.31s 2 subtests passed 59/93 qemu:unit / test-block-iothread OK 0.41s 22 subtests passed 60/93 qemu:unit / test-write-threshold OK 0.33s 2 subtests passed 61/93 qemu:unit / test-crypto-hash OK 0.08s 5 subtests passed 62/93 qemu:unit / test-crypto-hmac OK 0.08s 4 subtests passed 63/93 qemu:unit / test-crypto-cipher OK 0.09s 17 subtests passed 64/93 qemu:unit / test-crypto-akcipher OK 0.09s 16 subtests passed 65/93 qemu:unit / test-crypto-secret OK 0.11s 16 subtests passed 66/93 qemu:unit / test-crypto-der OK 0.08s 4 subtests passed 67/93 qemu:unit / test-authz-simple OK 0.08s 1 subtests passed 68/93 qemu:unit / test-authz-list OK 0.08s 6 subtests passed 69/93 qemu:unit / test-authz-listfile OK 0.16s 5 subtests passed 70/93 qemu:unit / test-io-task OK 0.33s 5 subtests passed 71/93 qemu:unit / test-io-channel-socket OK 0.33s 8 subtests passed 72/93 qemu:unit / test-io-channel-file OK 0.20s 3 subtests passed 73/93 qemu:unit / test-io-channel-command SKIP 0.19s 0 subtests passed 74/93 qemu:unit / test-io-channel-buffer OK 0.17s 1 subtests passed 75/93 qemu:unit / test-io-channel-null OK 0.19s 1 subtests passed 76/93 qemu:unit / test-crypto-ivgen OK 0.19s 9 subtests passed 77/93 qemu:unit / test-crypto-afsplit OK 0.20s 4 subtests passed 78/93 qemu:unit / test-timed-average OK 0.14s 1 subtests passed 79/93 qemu:unit / test-uuid OK 0.08s 6 subtests passed 80/93 qemu:unit / ptimer-test OK 0.09s 576 subtests passed 81/93 qemu:unit / test-iov OK 0.08s 6 subtests passed 82/93 qemu:unit / test-opts-visitor OK 0.14s 33 subtests passed 83/93 qemu:unit / test-xs-node OK 0.08s 7 subtests passed 84/93 qemu:unit / test-virtio-dmabuf OK 0.08s 5 subtests passed 85/93 qemu:unit / test-qmp-cmds OK 0.16s 10 subtests passed 86/93 qemu:unit / test-xbzrle OK 0.31s 6 subtests passed 87/93 qemu:unit / test-util-sockets OK 0.16s 2 subtests passed 88/93 qemu:unit / test-base64 OK 0.08s 4 subtests passed 89/93 qemu:unit / test-smp-parse OK 0.09s 10 subtests passed 90/93 qemu:unit / test-vmstate OK 0.22s 23 subtests passed 91/93 qemu:unit / test-yank OK 0.20s 6 subtests passed 92/93 qemu:unit / test-qdev-global-props OK 0.33s 4 subtests passed 93/93 qemu:unit / xml-preprocess OK 0.53s Ok: 92 Expected Fail: 0 Fail: 0 Unexpected Pass: 0 Skipped: 1 Timeout: 0 Full log written to C:/Users/Administrator/qemu/build/meson-logs/testlog.txt Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build # >> Could we at least test the block tools? qemu-img seems to work: >> >> # ./qemu-img.exe --help >> qemu-img version 9.0.92 (v9.1.0-rc2) >> Copyright (c) 2003-2024 Fabrice Bellard and the QEMU Project developers >> usage: qemu-img [standard options] command [command options] >> QEMU disk image utility >> >> '-h', '--help' display this help and exit >> '-V', '--version' output version information and exit >> ... >> >> It doesn't work currently: > ... >> Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build >> # make check-block >> make: *** No rule to make target 'check-block'. Stop. > > check-block never worked on Windows as far as I know, it's disabled in > the meson.build there: > > if not have_tools or host_os == 'windows' > subdir_done() > endif Ah OK, thanks. > > Thomas >
On 16/8/24 19:18, Philippe Mathieu-Daudé wrote: > On 16/8/24 18:40, Thomas Huth wrote: >> On 16/08/2024 18.34, Philippe Mathieu-Daudé wrote: >>> On 16/8/24 17:37, Thomas Huth wrote: >>>> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >>>> likely due to some changes in the MSYS2 environment. So far nobody has >>>> neither a clue what's going wrong here, nor an idea how to fix this >>>> (in fact most QEMU developers even don't have a Windows environment >>>> available for properly analyzing this problem), so let's disable the >>>> qtests here again to get at least the test coverage for the compilation >>>> and unit tests back to the CI. >>>> >>>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>>> --- >>>> .gitlab-ci.d/windows.yml | 2 ++ >>>> 1 file changed, 2 insertions(+) >>>> >>>> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >>>> index a83f23a786..9f3112f010 100644 >>>> --- a/.gitlab-ci.d/windows.yml >>>> +++ b/.gitlab-ci.d/windows.yml >>>> @@ -23,6 +23,8 @@ msys2-64bit: >>>> # for this job, because otherwise the build could not complete >>>> within >>>> # the project timeout. >>>> CONFIGURE_ARGS: --target-list=sparc-softmmu >>>> --without-default-devices -Ddebug=false -Doptimization=0 >>>> + # The qtests are broken in the msys2 job on gitlab, so disable >>>> them: >>>> + TEST_ARGS: --no-suite qtest >>> >>> Then building system emulation is pointless, isn't it? >> >> We're still running the unit tests and some others. > > I tried to configure with '--disable-system' and the same tests > are run: > > [1107/1109] Linking target tests/unit/test-vmstate.exe > [1108/1109] Linking target tests/unit/test-yank.exe > [1109/1109] Linking target tests/unit/test-qdev-global-props.exe Wrong console, only 743 objects compiled in this config. > /c/Users/Administrator/qemu/build/pyvenv/bin/meson test --no-rebuild -t > 1 --num-processes 1 --print-errorlogs --suite unit > 1/93 qemu:unit / test-crypto-block OK 0.22s 1 > subtests passed > 2/93 qemu:unit / test-aio-multithread OK 6.94s 5 > subtests passed > 3/93 qemu:unit / test-replication OK 1.55s 8 > subtests passed > 4/93 qemu:unit / test-bufferiszero OK 9.70s 1 > subtests passed > 5/93 qemu:unit / check-block-qdict OK 0.09s 10 > subtests passed > 6/93 qemu:unit / check-qdict OK 0.06s 15 > subtests passed > 7/93 qemu:unit / check-qnum OK 0.08s 8 > subtests passed > 8/93 qemu:unit / check-qstring OK 0.08s 4 > subtests passed > 9/93 qemu:unit / check-qlist OK 0.06s 4 > subtests passed > 10/93 qemu:unit / check-qnull OK 0.06s 2 > subtests passed > 11/93 qemu:unit / check-qobject OK 0.08s 7 > subtests passed > 12/93 qemu:unit / check-qjson OK 0.31s 31 > subtests passed > 13/93 qemu:unit / check-qlit OK 0.09s 2 > subtests passed > 14/93 qemu:unit / test-error-report OK 0.42s 6 > subtests passed > 15/93 qemu:unit / test-qobject-output-visitor OK 0.09s 16 > subtests passed > 16/93 qemu:unit / test-clone-visitor OK 0.06s 7 > subtests passed > 17/93 qemu:unit / test-qobject-input-visitor OK 0.08s 42 > subtests passed > 18/93 qemu:unit / test-forward-visitor OK 0.08s 7 > subtests passed > 19/93 qemu:unit / test-string-input-visitor OK 0.11s 8 > subtests passed > 20/93 qemu:unit / test-string-output-visitor OK 0.08s 14 > subtests passed > 21/93 qemu:unit / test-visitor-serialization OK 0.08s 156 > subtests passed > 22/93 qemu:unit / test-bitmap OK 0.08s 2 > subtests passed > 23/93 qemu:unit / test-resv-mem OK 0.09s 3 > subtests passed > 24/93 qemu:unit / test-x86-topo OK 0.06s 1 > subtests passed > 25/93 qemu:unit / test-cutils OK 0.08s 179 > subtests passed > 26/93 qemu:unit / test-div128 OK 0.08s 2 > subtests passed > 27/93 qemu:unit / test-shift128 OK 0.06s 2 > subtests passed > 28/93 qemu:unit / test-mul64 OK 0.08s 2 > subtests passed > 29/93 qemu:unit / test-int128 OK 0.08s 11 > subtests passed > 30/93 qemu:unit / rcutorture OK 2.34s 2 > subtests passed > 31/93 qemu:unit / test-rcu-list OK 4.20s 3 > subtests passed > 32/93 qemu:unit / test-rcu-simpleq OK 4.20s 3 > subtests passed > 33/93 qemu:unit / test-rcu-tailq OK 4.20s 3 > subtests passed > 34/93 qemu:unit / test-rcu-slist OK 4.20s 3 > subtests passed > 35/93 qemu:unit / test-qdist OK 0.09s 8 > subtests passed > 36/93 qemu:unit / test-qht OK 1.94s 2 > subtests passed > 37/93 qemu:unit / test-qtree OK 0.09s 4 > subtests passed > 38/93 qemu:unit / test-bitops OK 0.08s 6 > subtests passed > 39/93 qemu:unit / test-bitcnt OK 0.06s 4 > subtests passed > 40/93 qemu:unit / test-qgraph OK 0.06s 23 > subtests passed > 41/93 qemu:unit / check-qom-interface OK 0.09s 2 > subtests passed > 42/93 qemu:unit / check-qom-proplist OK 0.08s 9 > subtests passed > 43/93 qemu:unit / test-qemu-opts OK 0.06s 19 > subtests passed > 44/93 qemu:unit / test-keyval OK 0.08s 13 > subtests passed > 45/93 qemu:unit / test-logging OK 0.17s 4 > subtests passed > 46/93 qemu:unit / test-qapi-util OK 0.06s 2 > subtests passed > 47/93 qemu:unit / test-interval-tree OK 0.08s 6 > subtests passed > 48/93 qemu:unit / test-qmp-event OK 0.16s 6 > subtests passed > 49/93 qemu:unit / test-coroutine OK 0.28s 12 > subtests passed > 50/93 qemu:unit / test-aio OK 3.88s 27 > subtests passed > 51/93 qemu:unit / test-throttle OK 0.33s 17 > subtests passed > 52/93 qemu:unit / test-thread-pool OK 4.34s 6 > subtests passed > 53/93 qemu:unit / test-hbitmap OK 0.55s 40 > subtests passed > 54/93 qemu:unit / test-bdrv-drain OK 1.67s 30 > subtests passed > 55/93 qemu:unit / test-bdrv-graph-mod OK 0.31s 5 > subtests passed > 56/93 qemu:unit / test-blockjob OK 0.33s 8 > subtests passed > 57/93 qemu:unit / test-blockjob-txn OK 0.42s 7 > subtests passed > 58/93 qemu:unit / test-block-backend OK 0.31s 2 > subtests passed > 59/93 qemu:unit / test-block-iothread OK 0.41s 22 > subtests passed > 60/93 qemu:unit / test-write-threshold OK 0.33s 2 > subtests passed > 61/93 qemu:unit / test-crypto-hash OK 0.08s 5 > subtests passed > 62/93 qemu:unit / test-crypto-hmac OK 0.08s 4 > subtests passed > 63/93 qemu:unit / test-crypto-cipher OK 0.09s 17 > subtests passed > 64/93 qemu:unit / test-crypto-akcipher OK 0.09s 16 > subtests passed > 65/93 qemu:unit / test-crypto-secret OK 0.11s 16 > subtests passed > 66/93 qemu:unit / test-crypto-der OK 0.08s 4 > subtests passed > 67/93 qemu:unit / test-authz-simple OK 0.08s 1 > subtests passed > 68/93 qemu:unit / test-authz-list OK 0.08s 6 > subtests passed > 69/93 qemu:unit / test-authz-listfile OK 0.16s 5 > subtests passed > 70/93 qemu:unit / test-io-task OK 0.33s 5 > subtests passed > 71/93 qemu:unit / test-io-channel-socket OK 0.33s 8 > subtests passed > 72/93 qemu:unit / test-io-channel-file OK 0.20s 3 > subtests passed > 73/93 qemu:unit / test-io-channel-command SKIP 0.19s 0 > subtests passed > 74/93 qemu:unit / test-io-channel-buffer OK 0.17s 1 > subtests passed > 75/93 qemu:unit / test-io-channel-null OK 0.19s 1 > subtests passed > 76/93 qemu:unit / test-crypto-ivgen OK 0.19s 9 > subtests passed > 77/93 qemu:unit / test-crypto-afsplit OK 0.20s 4 > subtests passed > 78/93 qemu:unit / test-timed-average OK 0.14s 1 > subtests passed > 79/93 qemu:unit / test-uuid OK 0.08s 6 > subtests passed > 80/93 qemu:unit / ptimer-test OK 0.09s 576 > subtests passed > 81/93 qemu:unit / test-iov OK 0.08s 6 > subtests passed > 82/93 qemu:unit / test-opts-visitor OK 0.14s 33 > subtests passed > 83/93 qemu:unit / test-xs-node OK 0.08s 7 > subtests passed > 84/93 qemu:unit / test-virtio-dmabuf OK 0.08s 5 > subtests passed > 85/93 qemu:unit / test-qmp-cmds OK 0.16s 10 > subtests passed > 86/93 qemu:unit / test-xbzrle OK 0.31s 6 > subtests passed > 87/93 qemu:unit / test-util-sockets OK 0.16s 2 > subtests passed > 88/93 qemu:unit / test-base64 OK 0.08s 4 > subtests passed > 89/93 qemu:unit / test-smp-parse OK 0.09s 10 > subtests passed > 90/93 qemu:unit / test-vmstate OK 0.22s 23 > subtests passed > 91/93 qemu:unit / test-yank OK 0.20s 6 > subtests passed > 92/93 qemu:unit / test-qdev-global-props OK 0.33s 4 > subtests passed > 93/93 qemu:unit / xml-preprocess OK > 0.53s > > Ok: 92 > Expected Fail: 0 > Fail: 0 > Unexpected Pass: 0 > Skipped: 1 > Timeout: 0 > > Full log written to > C:/Users/Administrator/qemu/build/meson-logs/testlog.txt > > Administrator@FOOBAR UCRT64 /c/Users/Administrator/qemu/build > #
On 16/08/2024 19.18, Philippe Mathieu-Daudé wrote: > On 16/8/24 18:40, Thomas Huth wrote: >> On 16/08/2024 18.34, Philippe Mathieu-Daudé wrote: >>> On 16/8/24 17:37, Thomas Huth wrote: >>>> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >>>> likely due to some changes in the MSYS2 environment. So far nobody has >>>> neither a clue what's going wrong here, nor an idea how to fix this >>>> (in fact most QEMU developers even don't have a Windows environment >>>> available for properly analyzing this problem), so let's disable the >>>> qtests here again to get at least the test coverage for the compilation >>>> and unit tests back to the CI. >>>> >>>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>>> --- >>>> .gitlab-ci.d/windows.yml | 2 ++ >>>> 1 file changed, 2 insertions(+) >>>> >>>> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >>>> index a83f23a786..9f3112f010 100644 >>>> --- a/.gitlab-ci.d/windows.yml >>>> +++ b/.gitlab-ci.d/windows.yml >>>> @@ -23,6 +23,8 @@ msys2-64bit: >>>> # for this job, because otherwise the build could not complete within >>>> # the project timeout. >>>> CONFIGURE_ARGS: --target-list=sparc-softmmu >>>> --without-default-devices -Ddebug=false -Doptimization=0 >>>> + # The qtests are broken in the msys2 job on gitlab, so disable them: >>>> + TEST_ARGS: --no-suite qtest >>> >>> Then building system emulation is pointless, isn't it? >> >> We're still running the unit tests and some others. > > I tried to configure with '--disable-system' and the same tests > are run ... but you lose *compile-testing* of all of the system files, so what's your point? ... sorry, I don't get it? Thomas
On 19/8/24 07:30, Thomas Huth wrote: > On 16/08/2024 19.18, Philippe Mathieu-Daudé wrote: >> On 16/8/24 18:40, Thomas Huth wrote: >>> On 16/08/2024 18.34, Philippe Mathieu-Daudé wrote: >>>> On 16/8/24 17:37, Thomas Huth wrote: >>>>> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >>>>> likely due to some changes in the MSYS2 environment. So far nobody has >>>>> neither a clue what's going wrong here, nor an idea how to fix this >>>>> (in fact most QEMU developers even don't have a Windows environment >>>>> available for properly analyzing this problem), so let's disable the >>>>> qtests here again to get at least the test coverage for the >>>>> compilation >>>>> and unit tests back to the CI. >>>>> >>>>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>>>> --- >>>>> .gitlab-ci.d/windows.yml | 2 ++ >>>>> 1 file changed, 2 insertions(+) >>>>> >>>>> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >>>>> index a83f23a786..9f3112f010 100644 >>>>> --- a/.gitlab-ci.d/windows.yml >>>>> +++ b/.gitlab-ci.d/windows.yml >>>>> @@ -23,6 +23,8 @@ msys2-64bit: >>>>> # for this job, because otherwise the build could not >>>>> complete within >>>>> # the project timeout. >>>>> CONFIGURE_ARGS: --target-list=sparc-softmmu >>>>> --without-default-devices -Ddebug=false -Doptimization=0 >>>>> + # The qtests are broken in the msys2 job on gitlab, so disable >>>>> them: >>>>> + TEST_ARGS: --no-suite qtest >>>> >>>> Then building system emulation is pointless, isn't it? >>> >>> We're still running the unit tests and some others. >> >> I tried to configure with '--disable-system' and the same tests >> are run > > ... but you lose *compile-testing* of all of the system files, so what's > your point? ... sorry, I don't get it? I'm wondering why wasting resources and time on our longest job if the produced binary doesn't run. Anyway, I'm not objecting to your patch.
On 19/08/2024 12.21, Philippe Mathieu-Daudé wrote: > On 19/8/24 07:30, Thomas Huth wrote: >> On 16/08/2024 19.18, Philippe Mathieu-Daudé wrote: >>> On 16/8/24 18:40, Thomas Huth wrote: >>>> On 16/08/2024 18.34, Philippe Mathieu-Daudé wrote: >>>>> On 16/8/24 17:37, Thomas Huth wrote: >>>>>> The qtests are broken since a while in the MSYS2 job in the gitlab-CI, >>>>>> likely due to some changes in the MSYS2 environment. So far nobody has >>>>>> neither a clue what's going wrong here, nor an idea how to fix this >>>>>> (in fact most QEMU developers even don't have a Windows environment >>>>>> available for properly analyzing this problem), so let's disable the >>>>>> qtests here again to get at least the test coverage for the compilation >>>>>> and unit tests back to the CI. >>>>>> >>>>>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>>>>> --- >>>>>> .gitlab-ci.d/windows.yml | 2 ++ >>>>>> 1 file changed, 2 insertions(+) >>>>>> >>>>>> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml >>>>>> index a83f23a786..9f3112f010 100644 >>>>>> --- a/.gitlab-ci.d/windows.yml >>>>>> +++ b/.gitlab-ci.d/windows.yml >>>>>> @@ -23,6 +23,8 @@ msys2-64bit: >>>>>> # for this job, because otherwise the build could not complete >>>>>> within >>>>>> # the project timeout. >>>>>> CONFIGURE_ARGS: --target-list=sparc-softmmu >>>>>> --without-default-devices -Ddebug=false -Doptimization=0 >>>>>> + # The qtests are broken in the msys2 job on gitlab, so disable them: >>>>>> + TEST_ARGS: --no-suite qtest >>>>> >>>>> Then building system emulation is pointless, isn't it? >>>> >>>> We're still running the unit tests and some others. >>> >>> I tried to configure with '--disable-system' and the same tests >>> are run >> >> ... but you lose *compile-testing* of all of the system files, so what's >> your point? ... sorry, I don't get it? > > I'm wondering why wasting resources and time on our longest job > if the produced binary doesn't run. Anyway, I'm not objecting to > your patch. Ah, ok, I missed that idea about one of the longest running jobs. Hmmm, considering that we compile test the code in the cross-win64-system test, too, we could indeed shorten the runtime here a little bit ... I'll give it a try and send a v2... Thomas
diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml index a83f23a786..9f3112f010 100644 --- a/.gitlab-ci.d/windows.yml +++ b/.gitlab-ci.d/windows.yml @@ -23,6 +23,8 @@ msys2-64bit: # for this job, because otherwise the build could not complete within # the project timeout. CONFIGURE_ARGS: --target-list=sparc-softmmu --without-default-devices -Ddebug=false -Doptimization=0 + # The qtests are broken in the msys2 job on gitlab, so disable them: + TEST_ARGS: --no-suite qtest # The Windows git is a bit older so override the default GIT_FETCH_EXTRA_FLAGS: --no-tags --prune --quiet artifacts:
The qtests are broken since a while in the MSYS2 job in the gitlab-CI, likely due to some changes in the MSYS2 environment. So far nobody has neither a clue what's going wrong here, nor an idea how to fix this (in fact most QEMU developers even don't have a Windows environment available for properly analyzing this problem), so let's disable the qtests here again to get at least the test coverage for the compilation and unit tests back to the CI. Signed-off-by: Thomas Huth <thuth@redhat.com> --- .gitlab-ci.d/windows.yml | 2 ++ 1 file changed, 2 insertions(+)