Skip to content

Initialize asyncio event loop before using it#723

Closed
alimirjamali wants to merge 5 commits into
QubesOS:mainfrom
alimirjamali:issue-10188-asyncio
Closed

Initialize asyncio event loop before using it#723
alimirjamali wants to merge 5 commits into
QubesOS:mainfrom
alimirjamali:issue-10188-asyncio

Conversation

@alimirjamali

Copy link
Copy Markdown
Contributor

Python 3.14 (in Fedora 43) throws RunetimeError if event loop is not initialized before using it.

Resolves: QubesOS/qubes-issues#10188

@codecov

codecov Bot commented Aug 28, 2025

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 70.42%. Comparing base (5140b97) to head (44054d0).
⚠️ Report is 184 commits behind head on main.

Files with missing lines Patch % Lines
qubes/tools/qubesd_query.py 0.00% 2 Missing ⚠️
qubes/tools/qubes_create.py 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #723      +/-   ##
==========================================
- Coverage   70.55%   70.42%   -0.14%     
==========================================
  Files          61       61              
  Lines       13616    14141     +525     
==========================================
+ Hits         9607     9959     +352     
- Misses       4009     4182     +173     
Flag Coverage Δ
unittests 70.42% <0.00%> (-0.14%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread qubes/vm/__init__.py Outdated
self._qdb_connection_watch = qubesdb.QubesDB(self.name)
if loop is None:
loop = asyncio.get_event_loop()
loop = asyncio.new_event_loop()

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

During normal execution, at this point the loop surely is running already, so this change should not be necessary (or maybe it can be changed to get_running_loop()?).
What I'm not sure is there is a loop running in tests reaching this function, but this should be easy to find, and create the loop in those cases.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok. I changed this one toget_running_loop.

Python 3.14 (in Fedora 43) throws RunetimeError if event loop is not
initialized before using it.

Resolves: QubesOS/qubes-issues#10188
@reneleonhardt

Copy link
Copy Markdown

Nice contribution! What's still needed for Python 3.14?

@alimirjamali

Copy link
Copy Markdown
Contributor Author

Nice contribution! What's still needed for Python 3.14?

I am not certain. Some of the pending issues are tracked on the main Fedora 43 issue. Like this one.

@reneleonhardt

Copy link
Copy Markdown

Thank you!
So is there something missing to undraft and review this? 🙂

@alimirjamali

Copy link
Copy Markdown
Contributor Author

Thank you! So is there something missing to undraft and review this? 🙂

Actually this is also ready for review. The only issue is lack of time. More information here.

@marmarek

Copy link
Copy Markdown
Member

This PR is for dom0, and there are no plans to change Python version in R4.3 dom0 (it will stay at 3.13). This PR may be useful only for the future (R4.4 and beyond).

@alimirjamali alimirjamali marked this pull request as ready for review September 20, 2025 12:58
@reneleonhardt

Copy link
Copy Markdown

What does may be useful mean?
It may not be needed for R4.3 but it modernizes docs, tools, tests and vm while still working on 3.13 (Fedora 41 and 42) and allowing CI to prepare in time for the next Fedora ❤️

@marmarek

Copy link
Copy Markdown
Member

Yes, but at this time "main" branch is open only for changes that are necessary for R4.3.

@reneleonhardt

Copy link
Copy Markdown

I couldn't find this information in the README, only the master branch is being mentioned there.
Maybe you want to make the documentation clearer or introduce a v4.4 integration branch for future features.

@marmarek

marmarek commented Sep 20, 2025

Copy link
Copy Markdown
Member

See https://doc.qubes-os.org/en/latest/developer/releases/version-scheme.html#release-schedule
Anyway, this is not the place for such discussion.

@marmarek

marmarek commented Feb 5, 2026

Copy link
Copy Markdown
Member

PipelineRetry

@marmarek

marmarek commented Feb 5, 2026

Copy link
Copy Markdown
Member

openQArun MACHINE=64bit

@marmarek

marmarek commented Feb 5, 2026

Copy link
Copy Markdown
Member

With this PR, qubesd fails to start:

Feb 05 11:38:10.823025 dom0 qubesd[22337]: Traceback (most recent call last):
Feb 05 11:38:10.824614 dom0 qubesd[22337]:   File "/usr/bin/qubesd", line 5, in <module>
Feb 05 11:38:10.824614 dom0 qubesd[22337]:     sys.exit(main())
Feb 05 11:38:10.824614 dom0 qubesd[22337]:              ~~~~^^
Feb 05 11:38:10.824614 dom0 qubesd[22337]:   File "/usr/lib/python3.13/site-packages/qubes/tools/qubesd.py", line 48, in main
Feb 05 11:38:10.824614 dom0 qubesd[22337]:     args = parser.parse_args(args)
Feb 05 11:38:10.824614 dom0 qubesd[22337]:   File "/usr/lib/python3.13/site-packages/qubes/tools/__init__.py", line 425, in parse_args
Feb 05 11:38:10.824614 dom0 qubesd[22337]:     namespace.app = qubes.Qubes(
Feb 05 11:38:10.824614 dom0 qubesd[22337]:                     ~~~~~~~~~~~^
Feb 05 11:38:10.824614 dom0 qubesd[22337]:         namespace.app, offline_mode=namespace.offline_mode
Feb 05 11:38:10.824614 dom0 qubesd[22337]:         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Feb 05 11:38:10.824614 dom0 qubesd[22337]:     )
Feb 05 11:38:10.824614 dom0 qubesd[22337]:     ^
Feb 05 11:38:10.824920 dom0 qubesd[22337]:   File "/usr/lib/python3.13/site-packages/qubes/app.py", line 1040, in __init__
Feb 05 11:38:10.824920 dom0 qubesd[22337]:     self.load(lock=lock)
Feb 05 11:38:10.824920 dom0 qubesd[22337]:     ~~~~~~~~~^^^^^^^^^^^
Feb 05 11:38:10.824920 dom0 qubesd[22337]:   File "/usr/lib/python3.13/site-packages/qubes/app.py", line 1134, in load
Feb 05 11:38:10.824920 dom0 qubesd[22337]:     vm = cls(self, node)
Feb 05 11:38:10.824920 dom0 qubesd[22337]:   File "/usr/lib/python3.13/site-packages/qubes/vm/adminvm.py", line 103, in __init__
Feb 05 11:38:10.824920 dom0 qubesd[22337]:     self.start_qdb_watch()
Feb 05 11:38:10.824920 dom0 qubesd[22337]:     ~~~~~~~~~~~~~~~~~~~~^^
Feb 05 11:38:10.824920 dom0 qubesd[22337]:   File "/usr/lib/python3.13/site-packages/qubes/vm/__init__.py", line 617, in start_qdb_watch
Feb 05 11:38:10.824920 dom0 qubesd[22337]:     loop = asyncio.get_running_loop()
Feb 05 11:38:10.824920 dom0 qubesd[22337]: RuntimeError: no running event loop

:(

@reneleonhardt

Copy link
Copy Markdown

Seems to be the only place where a new loop hasn't been initialized yet:

loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)

Those breaking changes are surely not making it easier to use asyncio 😄

During qubesd startup, the event loop is already created, but it isn't
running yet. Use get_event_loop(), not get_running_loop().

QubesOS/qubes-issues#10188
@qubesos-bot

qubesos-bot commented May 30, 2026

Copy link
Copy Markdown

OpenQA test summary

Complete test suite and dependencies: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2026060215-devel&flavor=pull-requests

Test run included the following:

New failures, excluding unstable

Compared to: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2026050504-devel&flavor=update

  • system_tests_basic_vm_qrexec_gui

    • TC_20_NonAudio_fedora-43-xfce: test_500_gui_agent_env_sync (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_extra

    • TC_00_Direct_fedora-43-xfce: test_031_sign_verify_detached (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_00_Direct_fedora-43-xfce: test_041_sign_encrypt_decrypt (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_00_PDFConverter_fedora-43-xfce: test_002_500_pages (failure)
      AssertionError: 1 != 0 : qvm-convert-pdf failed: b'Sending file to ...

  • system_tests_guivm_vnc_gui_interactive

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@journalctl.log --form upname=collect...

    • collect_logs: Failed (test died + timed out)
      # Test died: command 'curl --form upload=@journalctl.log --form upn...

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@/var/log/libvirt/libxl/libxl-driver....

  • system_tests_gui_interactive_preloaded

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@journalctl.log --form upname=collect...

    • collect_logs: Failed (test died + timed out)
      # Test died: command 'curl --form upload=@journalctl.log --form upn...

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@/var/log/libvirt/libxl/libxl-driver....

  • system_tests_basic_vm_qrexec_gui_btrfs

    • TC_20_NonAudio_fedora-43-xfce-pool: test_010_run_xterm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

Failed tests

27 failures
  • system_tests_whonix

    • [unstable] whonixcheck: fail (unknown)
      Whonixcheck for sys-whonix failed...

    • [unstable] whonixcheck: fail (unknown)
      Whonixcheck for whonix-workstation-18 failed...

    • [unstable] whonixcheck: Failed (test died)
      # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...

  • system_tests_basic_vm_qrexec_gui

    • TC_20_NonAudio_fedora-43-xfce: test_500_gui_agent_env_sync (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_pvgrub_salt_storage

    • [unstable] TC_41_HVMGrub_debian-13-xfce: test_000_standalone_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • [unstable] TC_41_HVMGrub_debian-13-xfce: test_010_template_based_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • [unstable] TC_41_HVMGrub_debian-13-xfce: test_011_template_based_vm_dracut (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • [unstable] TC_41_HVMGrub_fedora-43-xfce: test_000_standalone_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

  • system_tests_extra

    • TC_00_Direct_fedora-43-xfce: test_031_sign_verify_detached (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_00_Direct_fedora-43-xfce: test_041_sign_encrypt_decrypt (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_00_PDFConverter_fedora-43-xfce: test_002_500_pages (failure)
      AssertionError: 1 != 0 : qvm-convert-pdf failed: b'Sending file to ...

  • system_tests_network_ipv6

  • system_tests_dispvm

    • [unstable] TC_20_DispVM_fedora-43-xfce: test_100_open_in_dispvm (error)
      subprocess.CalledProcessError: Command 'cat > /etc/thunderbird/pref...
  • system_tests_guivm_vnc_gui_interactive

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@journalctl.log --form upname=collect...

    • collect_logs: Failed (test died + timed out)
      # Test died: command 'curl --form upload=@journalctl.log --form upn...

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@/var/log/libvirt/libxl/libxl-driver....

  • system_tests_audio

  • system_tests_gui_interactive_preloaded

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@journalctl.log --form upname=collect...

    • collect_logs: Failed (test died + timed out)
      # Test died: command 'curl --form upload=@journalctl.log --form upn...

    • collect_logs: wait_serial (unknown)
      # Command: curl --form upload=@/var/log/libvirt/libxl/libxl-driver....

  • system_tests_basic_vm_qrexec_gui_btrfs

    • TC_20_NonAudio_fedora-43-xfce-pool: test_010_run_xterm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_whonix@hw1

    • [unstable] whonixcheck: fail (unknown)
      Whonixcheck for sys-whonix failed...

    • [unstable] whonixcheck: Failed (test died)
      # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...

  • system_tests_guivm_gpu_gui_interactive@hw13

    • shutdown: unnamed test (unknown)
    • shutdown: Failed (test died)
      # Test died: no candidate needle with tag(s) 'text-logged-in-root' ...

Fixed failures

Compared to: https://openqa.qubes-os.org/tests/176874#dependencies

17 fixed
  • system_tests_pvgrub_salt_storage

    • TC_41_HVMGrub_debian-13-xfce: test_001_standalone_vm_dracut (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_41_HVMGrub_fedora-43-xfce: test_010_template_based_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

  • system_tests_extra

    • TC_01_InputProxyExclude_debian-13-xfce: test_000_qemu_tablet (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_01_InputProxyExclude_fedora-43-xfce: test_000_qemu_tablet (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_00_QVCTest_fedora-43-xfce: test_010_screenshare (failure + cleanup)
      ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 1179648 != 0

    • TC_00_QVCTest_whonix-gateway-18: test_010_screenshare (failure + cleanup)
      AssertionError: 2.3156185715769593 not less than 2.0

    • TC_00_PDFConverter_fedora-43-xfce: test_004_cancel_stops_conversion (failure)
      AssertionError: DispVM not cleaned up 10s after cancel: {<DispVM at...

  • system_tests_usbproxy

    • system_tests: Fail (unknown)
      Tests qubes.tests.extra failed (exit code 1), details reported sepa...

    • system_tests: Failed (test died)
      # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...

    • system_tests: wait_serial (wait serial expected)
      # wait_serial expected: qr/h3uXO-\d+-/...

    • TC_20_USBProxy_core3_fedora-43-xfce: test_090_attach_stubdom (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

  • system_tests_audio

  • system_tests_audio@hw1

    • system_tests: Fail (unknown)
      Tests qubes.tests.integ.audio failed (exit code 1), details reporte...

    • system_tests: Failed (test died)
      # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...

    • TC_20_AudioVM_Pulse_debian-13-xfce: test_222_audio_rec_unmuted_pulseaudio (failure)
      AssertionError: only silence detected, no useful audio data

Unstable tests

Details
  • system_tests_whonix

    whonixcheck/Failed (3/5 times with errors)
    • job 179105 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    • job 179922 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    • job 180878 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/Failed (1/5 times with errors)
    • job 181249 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/Failed (1/5 times with errors)
    • job 180423 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/fail (2/5 times with errors)
    whonixcheck/fail (3/5 times with errors)
    whonixcheck/fail (1/5 times with errors)
    • job 180423 Whonixcheck for whonix-gateway-18 failed...
    whonixcheck/fail (1/5 times with errors)
    whonixcheck/fail (1/5 times with errors)
    whonixcheck/fail (1/5 times with errors)
    • job 180423 Whonixcheck for whonix-workstation-18 failed...
  • system_tests_suspend

    suspend/Failed (2/5 times with errors)
    • job 179086 # Test died: command 'qvm-run -p sys-net true' timed out at /usr/li...
    • job 179098 # Test died: command 'qvm-run -p sys-net true' timed out at /usr/li...
    suspend/Failed (3/5 times with errors)
    • job 178918 # Test died: command '! qvm-check sys-usb || qvm-run -p sys-usb tru...
    • job 179097 # Test died: command '! qvm-check sys-usb || qvm-run -p sys-usb tru...
    • job 179101 # Test died: command '! qvm-check sys-usb || qvm-run -p sys-usb tru...
    suspend/wait_serial (2/5 times with errors)
    suspend/wait_serial (3/5 times with errors)
    • job 178918 # Command: ! qvm-check sys-usb || qvm-run -p sys-usb true...
    • job 179097 # Command: ! qvm-check sys-usb || qvm-run -p sys-usb true...
    • job 179101 # Command: ! qvm-check sys-usb || qvm-run -p sys-usb true...
    suspend/wait_serial (2/5 times with errors)
    suspend/wait_serial (3/5 times with errors)
    • job 178918 # wait_serial expected: "lspci; echo 2E8vz-\$?-"...
    • job 179097 # wait_serial expected: "lspci; echo 2E8vz-\$?-"...
    • job 179101 # wait_serial expected: "lspci; echo 2E8vz-\$?-"...
  • system_tests_basic_vm_qrexec_gui

    system_tests/Fail (1/5 times with errors)
    • job 181256 Tests qubes.tests.integ.vm_qrexec_gui failed (exit code 1), details...
    system_tests/Failed (1/5 times with errors)
    • job 181256 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_NonAudio_fedora-43-xfce/test_401_long_window_title_utf8 (1/5 times with errors)
    • job 181256 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_network

    system_tests/Fail (1/5 times with errors)
    • job 181267 Tests qubes.tests.integ.network failed (exit code 1), details repor...
    system_tests/Failed (1/5 times with errors)
    • job 181267 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    VmNetworking_fedora-43-xfce/test_200_fake_ip_simple (1/5 times with errors)
    • job 181267 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    VmNetworking_fedora-43-xfce/test_212_custom_ip_firewall (1/5 times with errors)
    • job 181267 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_pvgrub_salt_storage

    system_tests/Fail (2/5 times with errors)
    • job 179954 Tests qubes.tests.integ.grub failed (exit code 1), details reported...
    • job 180910 Tests qubes.tests.integ.grub failed (exit code 1), details reported...
    system_tests/Failed (2/5 times with errors)
    • job 179954 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 180910 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_41_HVMGrub_debian-13-xfce/test_000_standalone_vm (2/5 times with errors)
    • job 179954 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180910 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_41_HVMGrub_fedora-43-xfce/test_000_standalone_vm (1/5 times with errors)
    • job 179954 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_41_HVMGrub_debian-13-xfce/test_001_standalone_vm_dracut (1/5 times with errors)
    • job 179954 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_41_HVMGrub_debian-13-xfce/test_010_template_based_vm (2/5 times with errors)
    • job 179954 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180910 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_41_HVMGrub_fedora-43-xfce/test_010_template_based_vm (2/5 times with errors)
    • job 179954 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180910 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_41_HVMGrub_debian-13-xfce/test_011_template_based_vm_dracut (2/5 times with errors)
    • job 179954 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180910 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_splitgpg

    system_tests/Failed (2/5 times with errors)
    • job 180457 # Test died: command 'testfunc qubes.tests.extra' timed out at qube...
    • job 180912 # Test died: command 'testfunc qubes.tests.extra' timed out at qube...
    system_tests/wait_serial (2/5 times with errors)
    • job 180457 # Command: testfunc qubes.tests.extra...
    • job 180912 # Command: testfunc qubes.tests.extra...
  • system_tests_extra

    system_tests/Fail (2/5 times with errors)
    • job 180448 Tests qubes.tests.extra failed (exit code 1), details reported sepa...
    • job 181263 Tests qubes.tests.extra failed (exit code 1), details reported sepa...
    system_tests/Failed (2/5 times with errors)
    • job 180448 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 181263 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_Evolution_fedora-43-xfce/test_000_send_receive_signed_encrypted (1/5 times with errors)
    • job 181263 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_00_PDFConverter_fedora-43-xfce/test_004_cancel_stops_conversion (1/5 times with errors)
    • job 181263 AssertionError: DispVM not cleaned up 10s after cancel: {<DispVM at...
    TC_20_Evolution_fedora-43-xfce/test_010_send_receive_signed_only (1/5 times with errors)
    • job 181263 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_10_Thunderbird_fedora-43-xfce/test_020_send_receive_inline_with_attachment (1/5 times with errors)
    • job 181263 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_00_Direct_whonix-workstation-18/test_050_generate (1/5 times with errors)
    • job 180448 ^^^^^^^^^^^^^^^^^... AssertionError: key generation failed
  • system_tests_gui_interactive

    screenlocker_lock/ (1/5 times with errors)
    screenlocker_lock/Failed (1/5 times with errors)
    • job 181264 # Test died: no candidate needle with tag(s) 'screenlocker-blank' m...
  • system_tests_usbproxy

    system_tests/Fail (3/5 times with errors)
    • job 179921 Tests qubes.tests.extra failed (exit code 1), details reported sepa...
    • job 180877 Tests qubes.tests.extra failed (exit code 1), details reported sepa...
    • job 181248 Tests qubes.tests.extra failed (exit code 1), details reported sepa...
    system_tests/Failed (3/5 times with errors)
    • job 179921 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 180877 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 181248 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_00_USBProxy_fedora-43-xfce/test_000_attach_detach (1/5 times with errors)
    • job 181248 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_USBProxy_core3_fedora-43-xfce/test_000_list (1/5 times with errors)
    • job 181248 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_USBProxy_core3_fedora-43-xfce/test_080_attach_existing_policy (1/5 times with errors)
    • job 181248 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_USBProxy_core3_fedora-43-xfce/test_090_attach_stubdom (2/5 times with errors)
    • job 179921 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180877 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_network_ipv6

    system_tests/Fail (2/5 times with errors)
    • job 179952 Tests qubes.tests.integ.network_ipv6 failed (exit code 1), details ...
    • job 181268 Tests qubes.tests.integ.network_ipv6 failed (exit code 1), details ...
    system_tests/Failed (1/5 times with errors)
    • job 179952 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    system_tests/Failed (1/5 times with errors)
    • job 181268 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    VmIPv6Networking_fedora-43-xfce/test_001_simple_networking_paused_restart_netvm (1/5 times with errors)
    • job 181268 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    VmIPv6Networking_debian-13-xfce/test_110_dynamic_attach (1/5 times with errors)
    • job 179952 raise TimeoutError from exc_val... TimeoutError
    VmIPv6Networking_fedora-43-xfce/test_110_dynamic_attach (1/5 times with errors)
    • job 179952 raise TimeoutError from exc_val... TimeoutError
    VmIPv6Networking_fedora-43-xfce/test_112_reattach_after_provider_shutdown (1/5 times with errors)
    • job 181268 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    VmIPv6Networking_fedora-43-xfce/test_113_reattach_after_provider_kill (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_114_reattach_after_provider_crash (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_200_fake_ip_simple (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_201_fake_ip_without_gw (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_202_fake_ip_firewall (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_203_fake_ip_inter_vm_allow (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_204_fake_ip_proxy (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_210_custom_ip_simple (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_211_custom_ip_proxy (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_212_custom_ip_firewall (1/5 times with errors)
    • job 181268 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    VmIPv6Networking_fedora-43-xfce/test_500_ipv6_simple_networking (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_501_simple_networking_paused_change_purge_old (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_501_simple_networking_paused_change_shutdown_old (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_501_simple_networking_paused_from_existent_to_none (1/5 times with errors)
    VmIPv6Networking_debian-13-xfce/test_501_simple_networking_paused_from_none_to_existent (1/5 times with errors)
    • job 181268 subprocess.CalledProcessError: Command 'qubes.WaitForNetworkUplink'...
    VmIPv6Networking_fedora-43-xfce/test_501_simple_networking_paused_from_none_to_existent (1/5 times with errors)
    • job 181268 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    VmIPv6Networking_fedora-43-xfce/test_501_simple_networking_paused_restart_netvm (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_501_simple_networking_paused_shutdown_netvm (1/5 times with errors)
    • job 181268 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    VmIPv6Networking_fedora-43-xfce/test_510_ipv6_simple_proxyvm (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_520_ipv6_simple_proxyvm_nm (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_530_ipv6_firewallvm_firewall (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_540_ipv6_inter_vm (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_550_ipv6_spoof_ip (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_710_ipv6_custom_ip_simple (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_711_ipv6_custom_ip_proxy (1/5 times with errors)
    VmIPv6Networking_fedora-43-xfce/test_712_ipv6_custom_ip_firewall (1/5 times with errors)
  • system_tests_network_updates

    system_tests/Fail (2/5 times with errors)
    • job 180909 Tests qubes.tests.integ.dom0_update failed (exit code 1), details r...
    • job 181269 Tests qubes.tests.integ.dom0_update failed (exit code 1), details r...
    system_tests/Failed (2/5 times with errors)
    • job 180909 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 181269 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_11_QvmTemplateMgmtVM_fedora-43-xfce/test_000_template_list (1/5 times with errors)
    • job 181269 AssertionError: qvm-template failed: [Qrexec] ERROR: dnf command is...
    TC_00_Dom0Upgrade_whonix-gateway-18/test_000_update (1/5 times with errors)
    • job 180909 Error: Failed to download metadata for repo 'test': Cannot download...
    TC_00_Dom0Upgrade_whonix-gateway-18/test_010_instal (1/5 times with errors)
    • job 181269 subprocess.CalledProcessError: Command 'timeout=120; while ! tor-ci...
  • system_tests_dispvm

    system_tests/Fail (2/5 times with errors)
    • job 180902 Tests qubes.tests.integ.dispvm failed (exit code 1), details report...
    • job 181262 Tests qubes.tests.integ.dispvm failed (exit code 1), details report...
    system_tests/Failed (2/5 times with errors)
    • job 180902 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 181262 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_21_DispVM_Preload/test_019_preload_discard_outdated_volumes (1/5 times with errors)
    • job 180902 AssertionError: last preloaded didn't complete in time
    TC_20_DispVM_fedora-43-xfce/test_100_open_in_dispvm (1/5 times with errors)
    • job 181262 subprocess.CalledProcessError: Command 'cat > /etc/thunderbird/pref...
    system_tests/wait_serial (1/5 times with errors)
    • job 181262 # Command: curl --form upload=@/var/log/libvirt/libxl/libxl-driver....
  • system_tests_guivm_vnc_gui_interactive

    guivm_startup/ (1/5 times with errors)
    guivm_startup/Failed (1/5 times with errors)
    • job 180431 # Test died: no candidate needle with tag(s) 'login-prompt-user-sel...
  • system_tests_audio

    system_tests/Failed (2/5 times with errors)
    • job 179117 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 180426 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    system_tests/Failed (3/5 times with errors)
    • job 179925 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 180881 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 181250 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_223_audio_play_hvm (1/5 times with errors)
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_fedora-43-xfce/test_224_audio_rec_muted_hvm (2/5 times with errors)
    • job 179117 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180426 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_224_audio_rec_muted_hvm (1/5 times with errors)
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_fedora-43-xfce/test_225_audio_rec_unmuted_hvm (1/5 times with errors)
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_225_audio_rec_unmuted_hvm (3/5 times with errors)
    • job 179925 AssertionError: too short audio, expected 10s, got 6.12523809523809...
    • job 180881 AssertionError: too short audio, expected 10s, got 6.69970521541950...
    • job 181250 AssertionError: too short audio, expected 10s, got 6.18662131519274...
    TC_20_AudioVM_PipeWire_fedora-43-xfce/test_251_audio_playback_audiovm_pipewire_late_start (1/5 times with errors)
    • job 181250 AssertionError: too short audio, expected 10s, got 9.35857142857142...
    TC_20_AudioVM_Pulse_fedora-43-xfce/test_252_audio_playback_audiovm_switch_hvm (3/5 times with errors)
    • job 180426 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 181250 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_252_audio_playback_audiovm_switch_hvm (3/5 times with errors)
    • job 180426 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 181250 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_PipeWire_debian-13-xfce/test_260_audio_mic_enabled_switch_audiovm (1/5 times with errors)
    • job 181250 AssertionError: pacat for test-inst-vm1 (xid 50) running(False) in ...
    TC_20_AudioVM_PipeWire_fedora-43-xfce/test_260_audio_mic_enabled_switch_audiovm (1/5 times with errors)
    • job 180881 AssertionError: Failed to get mic attach/detach status!
    TC_20_AudioVM_PipeWire_whonix-workstation-18/test_260_audio_mic_enabled_switch_audiovm (2/5 times with errors)
    • job 179117 AssertionError: 0 not greater than 0 : Failed to move-source-output
    • job 180426 AssertionError: 0 not greater than 0 : Failed to move-source-output
  • system_tests_gui_interactive@hw7

    screenlocker_lock/ (1/5 times with errors)
    screenlocker_lock/Failed (1/5 times with errors)
    • job 181264 # Test died: no candidate needle with tag(s) 'screenlocker-blank' m...
  • system_tests_basic_vm_qrexec_gui_ext4

    system_tests/Failed (1/5 times with errors)
    • job 179942 # Test died: command 'qvm-run --no-gui -p sys-net "curl -f http://1...
    system_tests/wait_serial (1/5 times with errors)
    • job 179942 # Command: qvm-run --no-gui -p sys-net "curl -f http://10.0.2.2:201...
  • system_tests_basic_vm_qrexec_gui@hw7

    system_tests/Fail (1/5 times with errors)
    • job 181256 Tests qubes.tests.integ.vm_qrexec_gui failed (exit code 1), details...
    system_tests/Failed (1/5 times with errors)
    • job 181256 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_NonAudio_fedora-43-xfce/test_401_long_window_title_utf8 (1/5 times with errors)
    • job 181256 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
  • system_tests_audio@hw1

    system_tests/Failed (2/5 times with errors)
    • job 179117 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 180426 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    system_tests/Failed (3/5 times with errors)
    • job 179925 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 180881 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    • job 181250 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_223_audio_play_hvm (1/5 times with errors)
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_fedora-43-xfce/test_224_audio_rec_muted_hvm (2/5 times with errors)
    • job 179117 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180426 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_224_audio_rec_muted_hvm (1/5 times with errors)
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_fedora-43-xfce/test_225_audio_rec_unmuted_hvm (1/5 times with errors)
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_225_audio_rec_unmuted_hvm (3/5 times with errors)
    • job 179925 AssertionError: too short audio, expected 10s, got 6.12523809523809...
    • job 180881 AssertionError: too short audio, expected 10s, got 6.69970521541950...
    • job 181250 AssertionError: too short audio, expected 10s, got 6.18662131519274...
    TC_20_AudioVM_PipeWire_fedora-43-xfce/test_251_audio_playback_audiovm_pipewire_late_start (1/5 times with errors)
    • job 181250 AssertionError: too short audio, expected 10s, got 9.35857142857142...
    TC_20_AudioVM_Pulse_fedora-43-xfce/test_252_audio_playback_audiovm_switch_hvm (3/5 times with errors)
    • job 180426 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 181250 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_252_audio_playback_audiovm_switch_hvm (3/5 times with errors)
    • job 180426 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 180881 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    • job 181250 qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...
    TC_20_AudioVM_PipeWire_debian-13-xfce/test_260_audio_mic_enabled_switch_audiovm (1/5 times with errors)
    • job 181250 AssertionError: pacat for test-inst-vm1 (xid 50) running(False) in ...
    TC_20_AudioVM_PipeWire_fedora-43-xfce/test_260_audio_mic_enabled_switch_audiovm (1/5 times with errors)
    • job 180881 AssertionError: Failed to get mic attach/detach status!
    TC_20_AudioVM_PipeWire_whonix-workstation-18/test_260_audio_mic_enabled_switch_audiovm (2/5 times with errors)
    • job 179117 AssertionError: 0 not greater than 0 : Failed to move-source-output
    • job 180426 AssertionError: 0 not greater than 0 : Failed to move-source-output
  • system_tests_whonix@hw1

    whonixcheck/Failed (3/5 times with errors)
    • job 179105 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    • job 179922 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    • job 180878 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/Failed (1/5 times with errors)
    • job 181249 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/Failed (1/5 times with errors)
    • job 180423 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/fail (2/5 times with errors)
    whonixcheck/fail (3/5 times with errors)
    whonixcheck/fail (1/5 times with errors)
    • job 180423 Whonixcheck for whonix-gateway-18 failed...
    whonixcheck/fail (1/5 times with errors)
    whonixcheck/fail (1/5 times with errors)
    whonixcheck/fail (1/5 times with errors)
    • job 180423 Whonixcheck for whonix-workstation-18 failed...
  • system_tests_suspend@hw1

    suspend/Failed (2/5 times with errors)
    • job 179086 # Test died: command 'qvm-run -p sys-net true' timed out at /usr/li...
    • job 179098 # Test died: command 'qvm-run -p sys-net true' timed out at /usr/li...
    suspend/Failed (3/5 times with errors)
    • job 178918 # Test died: command '! qvm-check sys-usb || qvm-run -p sys-usb tru...
    • job 179097 # Test died: command '! qvm-check sys-usb || qvm-run -p sys-usb tru...
    • job 179101 # Test died: command '! qvm-check sys-usb || qvm-run -p sys-usb tru...
    suspend/wait_serial (2/5 times with errors)
    suspend/wait_serial (3/5 times with errors)
    • job 178918 # Command: ! qvm-check sys-usb || qvm-run -p sys-usb true...
    • job 179097 # Command: ! qvm-check sys-usb || qvm-run -p sys-usb true...
    • job 179101 # Command: ! qvm-check sys-usb || qvm-run -p sys-usb true...
    suspend/wait_serial (2/5 times with errors)
    suspend/wait_serial (3/5 times with errors)
    • job 178918 # wait_serial expected: "lspci; echo 2E8vz-\$?-"...
    • job 179097 # wait_serial expected: "lspci; echo 2E8vz-\$?-"...
    • job 179101 # wait_serial expected: "lspci; echo 2E8vz-\$?-"...

Performance Tests

Performance degradation:

27 performance degradations
  • debian-13-xfce_dom0-dispvm-preload-2-api (mean:3.521): 42.25 🔻 ( previous job: 37.79, degradation: 111.81%)
  • fedora-43-xfce_dom0-dispvm-api (mean:8.662): 103.94 🔻 ( previous job: 89.33, degradation: 116.35%)
  • fedora-43-xfce_dom0-dispvm-gui-api (mean:10.378): 124.54 🔻 ( previous job: 112.35, degradation: 110.85%)
  • fedora-43-xfce_dom0-dispvm-preload-2-api (mean:4.195): 50.34 🔻 ( previous job: 44.03, degradation: 114.34%)
  • fedora-43-xfce_dom0-dispvm-preload-2-delay-0-api (mean:3.975): 47.70 🔻 ( previous job: 41.41, degradation: 115.19%)
  • whonix-workstation-18_dom0-dispvm-api (mean:9.902): 118.82 🔻 ( previous job: 97.14, degradation: 122.33%)
  • whonix-workstation-18_dom0-dispvm-gui-api (mean:11.925): 143.10 🔻 ( previous job: 121.86, degradation: 117.43%)
  • whonix-workstation-18_dom0-dispvm-preload-2-api (mean:4.449): 53.39 🔻 ( previous job: 48.39, degradation: 110.33%)
  • whonix-workstation-18_dom0-dispvm-preload-2-delay-0-api (mean:4.681): 56.18 🔻 ( previous job: 48.26, degradation: 116.40%)
  • whonix-workstation-18_dom0-dispvm-preload-4-api (mean:3.591): 43.10 🔻 ( previous job: 38.29, degradation: 112.56%)
  • debian-13-xfce_socket-data-duplex: 97.86 🔻 ( previous job: 85.67, degradation: 114.23%)
  • fedora-43-xfce_exec-data-simplex: 67.01 🔻 ( previous job: 60.82, degradation: 110.17%)
  • whonix-gateway-18_socket-data-duplex: 107.10 🔻 ( previous job: 90.03, degradation: 118.95%)
  • whonix-workstation-18_socket: 8.78 🔻 ( previous job: 7.66, degradation: 114.66%)
  • whonix-workstation-18_socket-data-duplex: 118.08 🔻 ( previous job: 92.97, degradation: 127.00%)
  • dom0_varlibqubes_seq1m_q1t1_write 3:write_bandwidth_kb: 171992.00 🔻 ( previous job: 201978.00, degradation: 85.15%)
  • dom0_varlibqubes_rnd4k_q32t1_read 3:read_bandwidth_kb: 84830.00 🔻 ( previous job: 102155.00, degradation: 83.04%)
  • dom0_varlibqubes_rnd4k_q32t1_write 3:write_bandwidth_kb: 6949.00 🔻 ( previous job: 10623.00, degradation: 65.41%)
  • fedora-43-xfce_root_seq1m_q1t1_read 3:read_bandwidth_kb: 278063.00 🔻 ( previous job: 310781.00, degradation: 89.47%)
  • fedora-43-xfce_root_seq1m_q1t1_write 3:write_bandwidth_kb: 37339.00 🔻 ( previous job: 78270.00, degradation: 47.71%)
  • fedora-43-xfce_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 62659.00 🔻 ( previous job: 90877.00, degradation: 68.95%)
  • fedora-43-xfce_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 7164.00 🔻 ( previous job: 8769.00, degradation: 81.70%)
  • fedora-43-xfce_private_seq1m_q1t1_write 3:write_bandwidth_kb: 39185.00 🔻 ( previous job: 71992.00, degradation: 54.43%)
  • fedora-43-xfce_private_rnd4k_q32t1_write 3:write_bandwidth_kb: 1830.00 🔻 ( previous job: 3674.00, degradation: 49.81%)
  • fedora-43-xfce_volatile_seq1m_q8t1_read 3:read_bandwidth_kb: 332564.00 🔻 ( previous job: 378957.00, degradation: 87.76%)
  • fedora-43-xfce_volatile_rnd4k_q32t1_read 3:read_bandwidth_kb: 55082.00 🔻 ( previous job: 79218.00, degradation: 69.53%)
  • fedora-43-xfce_volatile_rnd4k_q1t1_read 3:read_bandwidth_kb: 7261.00 🔻 ( previous job: 8667.00, degradation: 83.78%)

Remaining performance tests:

84 tests
  • debian-13-xfce_dom0-dispvm-api (mean:6.47): 77.64 🔻 ( previous job: 74.50, degradation: 104.23%)
  • debian-13-xfce_dom0-dispvm-gui-api (mean:8.137): 97.65 🔻 ( previous job: 93.50, degradation: 104.44%)
  • debian-13-xfce_dom0-dispvm-preload-2-delay-0-api (mean:3.055): 36.66 🔻 ( previous job: 34.29, degradation: 106.90%)
  • debian-13-xfce_dom0-dispvm-preload-2-delay-minus-1d2-api (mean:3.453): 41.44 🔻 ( previous job: 38.52, degradation: 107.58%)
  • debian-13-xfce_dom0-dispvm-preload-4-api (mean:2.352): 28.23 🟢 ( previous job: 30.73, improvement: 91.84%)
  • debian-13-xfce_dom0-dispvm-preload-4-delay-0-api (mean:2.528): 30.34 🔻 ( previous job: 29.50, degradation: 102.85%)
  • debian-13-xfce_dom0-dispvm-preload-4-delay-minus-1d2-api (mean:2.522): 30.27 🔻 ( previous job: 28.74, degradation: 105.30%)
  • debian-13-xfce_dom0-dispvm-preload-2-gui-api (mean:4.689): 56.26 🔻 ( previous job: 53.65, degradation: 104.87%)
  • debian-13-xfce_dom0-dispvm-preload-4-gui-api (mean:3.681): 44.18 🟢 ( previous job: 44.40, improvement: 99.50%)
  • debian-13-xfce_dom0-dispvm-preload-6-gui-api (mean:3.398): 40.77 🟢 ( previous job: 41.47, improvement: 98.32%)
  • debian-13-xfce_dom0-vm-api (mean:0.031): 0.37 🟢 ( previous job: 0.62, improvement: 60.00%)
  • debian-13-xfce_dom0-vm-gui-api (mean:0.036): 0.44 🟢 ( previous job: 0.47, improvement: 93.76%)
  • fedora-43-xfce_dom0-dispvm-preload-2-delay-minus-1d2-api (mean:4.05): 48.60 🔻 ( previous job: 46.26, degradation: 105.07%)
  • fedora-43-xfce_dom0-dispvm-preload-4-api (mean:3.079): 36.95 🔻 ( previous job: 36.18, degradation: 102.13%)
  • fedora-43-xfce_dom0-dispvm-preload-4-delay-0-api (mean:2.889): 34.66 🟢 ( previous job: 36.15, improvement: 95.89%)
  • fedora-43-xfce_dom0-dispvm-preload-4-delay-minus-1d2-api (mean:3.077): 36.92 🔻 ( previous job: 36.13, degradation: 102.18%)
  • fedora-43-xfce_dom0-dispvm-preload-2-gui-api (mean:5.613): 67.36 🔻 ( previous job: 63.91, degradation: 105.39%)
  • fedora-43-xfce_dom0-dispvm-preload-4-gui-api (mean:4.319): 51.82 🟢 ( previous job: 52.06, improvement: 99.54%)
  • fedora-43-xfce_dom0-dispvm-preload-6-gui-api (mean:3.66): 43.92 🟢 ( previous job: 46.35, improvement: 94.76%)
  • fedora-43-xfce_dom0-vm-api (mean:0.037): 0.44 🟢 ( previous job: 0.47, improvement: 94.62%)
  • fedora-43-xfce_dom0-vm-gui-api (mean:0.035): 0.42 🟢 ( previous job: 0.46, improvement: 92.09%)
  • whonix-workstation-18_dom0-dispvm-preload-2-delay-minus-1d2-api (mean:4.643): 55.72 🟢 ( previous job: 59.22, improvement: 94.10%)
  • whonix-workstation-18_dom0-dispvm-preload-4-delay-0-api (mean:3.657): 43.88 🔻 ( previous job: 43.23, degradation: 101.51%)
  • whonix-workstation-18_dom0-dispvm-preload-4-delay-minus-1d2-api (mean:3.697): 44.36 🔻 ( previous job: 42.67, degradation: 103.97%)
  • whonix-workstation-18_dom0-dispvm-preload-2-gui-api (mean:6.233): 74.80 🔻 ( previous job: 72.05, degradation: 103.82%)
  • whonix-workstation-18_dom0-dispvm-preload-4-gui-api (mean:4.725): 56.70 🔻 ( previous job: 52.81, degradation: 107.37%)
  • whonix-workstation-18_dom0-dispvm-preload-6-gui-api (mean:4.386): 52.63 🔻 ( previous job: 50.72, degradation: 103.78%)
  • whonix-workstation-18_dom0-vm-api (mean:0.033): 0.40 🟢 ( previous job: 0.43, improvement: 92.15%)
  • whonix-workstation-18_dom0-vm-gui-api (mean:0.045): 0.54 🟢 ( previous job: 0.56, improvement: 96.94%)
  • debian-13-xfce_exec: 8.44 🔻 ( previous job: 7.85, degradation: 107.43%)
  • debian-13-xfce_exec-root: 27.41 🔻 ( previous job: 26.74, degradation: 102.51%)
  • debian-13-xfce_socket: 9.19 🔻 ( previous job: 8.37, degradation: 109.76%)
  • debian-13-xfce_socket-root: 8.92 🟢 ( previous job: 9.13, improvement: 97.72%)
  • debian-13-xfce_exec-data-simplex: 65.51 🔻 ( previous job: 63.05, degradation: 103.89%)
  • debian-13-xfce_exec-data-duplex: 66.10 🔻 ( previous job: 62.45, degradation: 105.85%)
  • debian-13-xfce_exec-data-duplex-root: 78.25 🔻 ( previous job: 78.04, degradation: 100.27%)
  • fedora-43-xfce_exec: 9.02 🟢 ( previous job: 9.10, improvement: 99.12%)
  • fedora-43-xfce_exec-root: 71.57 🔻 ( previous job: 69.86, degradation: 102.46%)
  • fedora-43-xfce_socket: 8.97 🔻 ( previous job: 8.52, degradation: 105.31%)
  • fedora-43-xfce_socket-root: 8.52 🔻 ( previous job: 7.96, degradation: 107.08%)
  • fedora-43-xfce_exec-data-duplex: 63.67 🟢 ( previous job: 68.31, improvement: 93.21%)
  • fedora-43-xfce_exec-data-duplex-root: 97.00 🟢 ( previous job: 98.74, improvement: 98.24%)
  • fedora-43-xfce_socket-data-duplex: 94.20 🔻 ( previous job: 91.81, degradation: 102.61%)
  • whonix-gateway-18_exec: 7.18 🟢 ( previous job: 8.01, improvement: 89.69%)
  • whonix-gateway-18_exec-root: 130.29 🔻 ( previous job: 126.14, degradation: 103.29%)
  • whonix-gateway-18_socket: 8.49 🟢 ( previous job: 8.63, improvement: 98.34%)
  • whonix-gateway-18_socket-root: 8.82 🔻 ( previous job: 8.37, degradation: 105.33%)
  • whonix-gateway-18_exec-data-simplex: 58.37 🟢 ( previous job: 62.50, improvement: 93.38%)
  • whonix-gateway-18_exec-data-duplex: 69.48 🔻 ( previous job: 68.01, degradation: 102.15%)
  • whonix-gateway-18_exec-data-duplex-root: 131.69 🟢 ( previous job: 137.28, improvement: 95.93%)
  • whonix-workstation-18_exec: 8.27 🔻 ( previous job: 8.14, degradation: 101.64%)
  • whonix-workstation-18_exec-root: 145.99 🔻 ( previous job: 144.02, degradation: 101.37%)
  • whonix-workstation-18_socket-root: 9.11 🔻 ( previous job: 8.87, degradation: 102.73%)
  • whonix-workstation-18_exec-data-simplex: 66.85 🔻 ( previous job: 66.36, degradation: 100.75%)
  • whonix-workstation-18_exec-data-duplex: 65.08 🟢 ( previous job: 65.56, improvement: 99.28%)
  • whonix-workstation-18_exec-data-duplex-root: 140.06 🔻 ( previous job: 130.67, degradation: 107.19%)
  • dom0_root_seq1m_q8t1_read 3:read_bandwidth_kb: 472970.00 🟢 ( previous job: 388793.00, improvement: 121.65%)
  • dom0_root_seq1m_q8t1_write 3:write_bandwidth_kb: 185720.00 🟢 ( previous job: 119690.00, improvement: 155.17%)
  • dom0_root_seq1m_q1t1_read 3:read_bandwidth_kb: 376103.00 🟢 ( previous job: 245223.00, improvement: 153.37%)
  • dom0_root_seq1m_q1t1_write 3:write_bandwidth_kb: 189304.00 🔻 ( previous job: 199974.00, degradation: 94.66%)
  • dom0_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 104495.00 🟢 ( previous job: 13948.00, improvement: 749.18%)
  • dom0_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 9014.00 🟢 ( previous job: 6899.00, improvement: 130.66%)
  • dom0_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 8491.00 🔻 ( previous job: 8963.00, degradation: 94.73%)
  • dom0_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 4658.00 🔻 ( previous job: 5055.00, degradation: 92.15%)
  • dom0_varlibqubes_seq1m_q8t1_read 3:read_bandwidth_kb: 474468.00 🟢 ( previous job: 429040.00, improvement: 110.59%)
  • dom0_varlibqubes_seq1m_q8t1_write 3:write_bandwidth_kb: 262866.00 🟢 ( previous job: 257066.00, improvement: 102.26%)
  • dom0_varlibqubes_seq1m_q1t1_read 3:read_bandwidth_kb: 439654.00 🔻 ( previous job: 446202.00, degradation: 98.53%)
  • dom0_varlibqubes_rnd4k_q1t1_read 3:read_bandwidth_kb: 8758.00 🟢 ( previous job: 8179.00, improvement: 107.08%)
  • dom0_varlibqubes_rnd4k_q1t1_write 3:write_bandwidth_kb: 4344.00 🔻 ( previous job: 4404.00, degradation: 98.64%)
  • fedora-43-xfce_root_seq1m_q8t1_read 3:read_bandwidth_kb: 379094.00 🔻 ( previous job: 415113.00, degradation: 91.32%)
  • fedora-43-xfce_root_seq1m_q8t1_write 3:write_bandwidth_kb: 206351.00 🟢 ( previous job: 138144.00, improvement: 149.37%)
  • fedora-43-xfce_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 2682.00 🟢 ( previous job: 1519.00, improvement: 176.56%)
  • fedora-43-xfce_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 787.00 🟢 ( previous job: 262.00, improvement: 300.38%)
  • fedora-43-xfce_private_seq1m_q8t1_read 3:read_bandwidth_kb: 343008.00 🔻 ( previous job: 355690.00, degradation: 96.43%)
  • fedora-43-xfce_private_seq1m_q8t1_write 3:write_bandwidth_kb: 160075.00 🟢 ( previous job: 130275.00, improvement: 122.87%)
  • fedora-43-xfce_private_seq1m_q1t1_read 3:read_bandwidth_kb: 306870.00 🟢 ( previous job: 294295.00, improvement: 104.27%)
  • fedora-43-xfce_private_rnd4k_q32t1_read 3:read_bandwidth_kb: 91216.00 🟢 ( previous job: 81357.00, improvement: 112.12%)
  • fedora-43-xfce_private_rnd4k_q1t1_read 3:read_bandwidth_kb: 9240.00 🟢 ( previous job: 8429.00, improvement: 109.62%)
  • fedora-43-xfce_private_rnd4k_q1t1_write 3:write_bandwidth_kb: 598.00 🟢 ( previous job: 567.00, improvement: 105.47%)
  • fedora-43-xfce_volatile_seq1m_q8t1_write 3:write_bandwidth_kb: 103173.00 🟢 ( previous job: 95037.00, improvement: 108.56%)
  • fedora-43-xfce_volatile_seq1m_q1t1_read 3:read_bandwidth_kb: 306153.00 🟢 ( previous job: 202428.00, improvement: 151.24%)
  • fedora-43-xfce_volatile_seq1m_q1t1_write 3:write_bandwidth_kb: 39415.00 🟢 ( previous job: 26016.00, improvement: 151.50%)
  • fedora-43-xfce_volatile_rnd4k_q32t1_write 3:write_bandwidth_kb: 3431.00 🟢 ( previous job: 1720.00, improvement: 199.48%)
  • fedora-43-xfce_volatile_rnd4k_q1t1_write 3:write_bandwidth_kb: 1580.00 🟢 ( previous job: 548.00, improvement: 288.32%)

@marmarek

Copy link
Copy Markdown
Member

There is a lot of failures here, most include asyncio.exceptions.InvalidStateError. I'm not 100% sure it's related to this PR, but it's very likely.

marmarek added 2 commits May 30, 2026 14:26
If old loop still has some tasks, bad things happen (mostly timeouts
waiting for no longer existing objects). While theoretically all tasks should be
completed by the time test ends, ensure that by cancelling them all (and
logging a warning if there were any).
Do not create new event loop for every test, that makes various FD
readers and events not working anymore. While theoretically it should be
possible to find and re-register them all, it isn't worth it.

And also, register libvirt event loop only after creating asyncio one.
asyncio.run() unsets event loop at the end, which breaks any further use of
asyncio. But the QubesTestCase.setUp() creates event loop, so using
get_event_loop() is okay there.
Similarly new_event_loop() is harmful.

This reverts significant part of 7e4a837 "Initialize asyncio event loop
before using it".

Fixes: 7e4a837 "Initialize asyncio event loop before using it"
@ben-grande

Copy link
Copy Markdown
Contributor

@marmarek

marmarek commented Jun 3, 2026

Copy link
Copy Markdown
Member

In the end, not much left from the original commit. I'll cleanup the history and open new PR.

@marmarek

marmarek commented Jun 3, 2026

Copy link
Copy Markdown
Member

#821

@marmarek marmarek closed this Jun 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

asyncio.get_event_loop() throws RuntimeError on Fedora 43 / Python 3.14 if event loop is not initialized

5 participants