Skip to content

Assure paused domains prior to suspending remain paused #673

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 27, 2025

Conversation

alimirjamali
Copy link
Contributor

@alimirjamali alimirjamali force-pushed the issue-1611-resume-paused branch from 5f809c9 to 3d724b8 Compare April 9, 2025 08:39
@alimirjamali alimirjamali marked this pull request as ready for review April 9, 2025 08:55
@alimirjamali
Copy link
Contributor Author

pipelineretry

@marmarek
Copy link
Member

marmarek commented Apr 9, 2025

Paused qube should not be unpaused, even for a short time. It might be paused for several reasons, and allowing it to execute is a bad idea. Yes, it may become quite unhappy after host suspend (mostly due to time jump), but that's why it's called "emergency pause" in the domains widget, to not encourage using it.

@alimirjamali
Copy link
Contributor Author

Paused qube should not be unpaused, even for a short time.

Yes. I remember it from #616

I will read the suspend and pause functions and see the differences.

BTW, any idea on why the CI/CD did not run on this PR?

@alimirjamali alimirjamali force-pushed the issue-1611-resume-paused branch from 3d724b8 to 41681b9 Compare April 9, 2025 20:04
@alimirjamali
Copy link
Contributor Author

Paused qube should not be unpaused, even for a short time. It might be paused for several reasons, and allowing it to execute is a bad idea. Yes, it may become quite unhappy after host suspend (mostly due to time jump), but that's why it's called "emergency pause" in the domains widget, to not encourage using it.

This is done. Paused qubes will remain paused and will not be put in S3-Suspend mode. And it takes 30 seconds to resume/unpause on my system :/

Copy link

codecov bot commented Apr 9, 2025

Codecov Report

Attention: Patch coverage is 90.47619% with 2 lines in your changes missing coverage. Please review.

Project coverage is 70.16%. Comparing base (b83d9ab) to head (2d553d4).
Report is 31 commits behind head on main.

Files with missing lines Patch % Lines
qubes/api/internal.py 90.47% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #673      +/-   ##
==========================================
- Coverage   70.24%   70.16%   -0.08%     
==========================================
  Files          59       59              
  Lines       12739    12729      -10     
==========================================
- Hits         8948     8931      -17     
- Misses       3791     3798       +7     
Flag Coverage Δ
unittests 70.16% <90.47%> (-0.08%) ⬇️

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.

@alimirjamali alimirjamali force-pushed the issue-1611-resume-paused branch 3 times, most recently from 8647328 to 0ccf400 Compare April 12, 2025 19:27
@alimirjamali
Copy link
Contributor Author

PipelineRetry

@qubesos-bot
Copy link

qubesos-bot commented Apr 16, 2025

OpenQA test summary

Complete test suite and dependencies: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2025042414-4.3&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=2025031804-4.3&flavor=update

  • system_tests_suspend

  • system_tests_extra

    • TC_00_QVCTest_whonix-gateway-17: test_010_screenshare (failure)
      ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 0 == 0
  • system_tests_kde_gui_interactive

    • gui_keyboard_layout: wait_serial (wait serial expected)
      # wait_serial expected: "echo -e '[Layout]\nLayoutList=us,de' | sud...

    • gui_keyboard_layout: Failed (test died)
      # Test died: command 'test "$(cd ~user;ls e1*)" = "$(qvm-run -p wor...

  • system_tests_qwt_win10_seamless@hw13

    • windows_clipboard_and_filecopy: unnamed test (unknown)
    • windows_clipboard_and_filecopy: Failed (test died)
      # Test died: no candidate needle with tag(s) 'windows-Edge-address-...
  • system_tests_qwt_win11@hw13

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

    • windows_install: Failed (test died + timed out)
      # Test died: command 'script -e -c 'bash -x /usr/bin/qvm-create-win...

  • system_tests_audio@hw1

Failed tests

10 failures
  • system_tests_suspend

    • suspend: unnamed test (unknown)
    • suspend: Failed (test died)
      # Test died: no candidate needle with tag(s) 'SUSPEND-FAILED' match...
  • system_tests_extra

    • TC_00_QVCTest_whonix-gateway-17: test_010_screenshare (failure)
      ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 0 == 0
  • system_tests_kde_gui_interactive

    • gui_keyboard_layout: wait_serial (wait serial expected)
      # wait_serial expected: "echo -e '[Layout]\nLayoutList=us,de' | sud...

    • gui_keyboard_layout: Failed (test died)
      # Test died: command 'test "$(cd ~user;ls e1*)" = "$(qvm-run -p wor...

  • system_tests_qwt_win10_seamless@hw13

    • windows_clipboard_and_filecopy: unnamed test (unknown)
    • windows_clipboard_and_filecopy: Failed (test died)
      # Test died: no candidate needle with tag(s) 'windows-Edge-address-...
  • system_tests_qwt_win11@hw13

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

    • windows_install: Failed (test died + timed out)
      # Test died: command 'script -e -c 'bash -x /usr/bin/qvm-create-win...

  • system_tests_audio@hw1

Fixed failures

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

13 fixed
  • system_tests_whonix

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

    • whonixcheck: unnamed test (unknown)

  • system_tests_suspend

  • system_tests_basic_vm_qrexec_gui

  • system_tests_qrexec

  • system_tests_kde_gui_interactive

    • clipboard_and_web: unnamed test (unknown)

    • clipboard_and_web: Failed (test died)
      # Test died: no candidate needle with tag(s) 'qubes-website' matche...

    • clipboard_and_web: wait_serial (wait serial expected)
      # wait_serial expected: "lspci; echo 2E8vz-\$?-"...

  • system_tests_audio

  • system_tests_whonix@hw7

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

    • whonixcheck: unnamed test (unknown)

  • system_tests_guivm_vnc_gui_interactive

    • gui_filecopy: unnamed test (unknown)
    • gui_filecopy: Failed (test died)
      # Test died: no candidate needle with tag(s) 'files-work' matched...

Unstable tests

Performance Tests

Performance degradation:

14 performance degradations
  • debian-12-xfce_exec: 8.25 :small_red_triangle_up: ( previous job: 7.12, degradation: 115.90%)
  • whonix-gateway-17_exec: 8.03 :small_red_triangle_up: ( previous job: 6.82, degradation: 117.73%)
  • whonix-gateway-17_socket: 8.06 :small_red_triangle_up: ( previous job: 7.24, degradation: 111.38%)
  • whonix-gateway-17_socket-root: 9.59 :small_red_triangle_up: ( previous job: 7.65, degradation: 125.37%)
  • dom0_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 7919.00 :small_red_triangle_up: ( previous job: 10795.00, degradation: 73.36%)
  • dom0_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 3929.00 :small_red_triangle_up: ( previous job: 4826.00, degradation: 81.41%)
  • dom0_varlibqubes_seq1m_q8t1_write 3:write_bandwidth_kb: 221639.00 :small_red_triangle_up: ( previous job: 250795.00, degradation: 88.37%)
  • dom0_varlibqubes_rnd4k_q1t1_write 3:write_bandwidth_kb: 3074.00 :small_red_triangle_up: ( previous job: 4903.00, degradation: 62.70%)
  • fedora-41-xfce_root_seq1m_q1t1_write 3:write_bandwidth_kb: 56653.00 :small_red_triangle_up: ( previous job: 87940.00, degradation: 64.42%)
  • fedora-41-xfce_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 2273.00 :small_red_triangle_up: ( previous job: 3599.00, degradation: 63.16%)
  • fedora-41-xfce_private_seq1m_q8t1_write 3:write_bandwidth_kb: 151859.00 :small_red_triangle_up: ( previous job: 170062.00, degradation: 89.30%)
  • fedora-41-xfce_volatile_seq1m_q8t1_write 3:write_bandwidth_kb: 86862.00 :small_red_triangle_up: ( previous job: 179949.00, degradation: 48.27%)
  • fedora-41-xfce_volatile_seq1m_q1t1_read 3:read_bandwidth_kb: 286339.00 :small_red_triangle_up: ( previous job: 324737.00, degradation: 88.18%)
  • fedora-41-xfce_volatile_rnd4k_q32t1_write 3:write_bandwidth_kb: 2135.00 :small_red_triangle_up: ( previous job: 5672.00, degradation: 37.64%)

Remaining performance tests:

58 tests
  • debian-12-xfce_exec-root: 29.12 :small_red_triangle_up: ( previous job: 28.65, degradation: 101.63%)
  • debian-12-xfce_socket: 8.45 🟢 ( previous job: 8.60, improvement: 98.26%)
  • debian-12-xfce_socket-root: 8.91 :small_red_triangle_up: ( previous job: 8.52, degradation: 104.51%)
  • debian-12-xfce_exec-data-simplex: 61.95 🟢 ( previous job: 71.62, improvement: 86.50%)
  • debian-12-xfce_exec-data-duplex: 70.87 :small_red_triangle_up: ( previous job: 70.34, degradation: 100.75%)
  • debian-12-xfce_exec-data-duplex-root: 81.37 🟢 ( previous job: 82.72, improvement: 98.37%)
  • debian-12-xfce_socket-data-duplex: 163.92 :small_red_triangle_up: ( previous job: 156.96, degradation: 104.44%)
  • fedora-41-xfce_exec: 9.40 :small_red_triangle_up: ( previous job: 9.27, degradation: 101.45%)
  • fedora-41-xfce_exec-root: 61.96 :small_red_triangle_up: ( previous job: 61.51, degradation: 100.74%)
  • fedora-41-xfce_socket: 8.39 🟢 ( previous job: 8.63, improvement: 97.21%)
  • fedora-41-xfce_socket-root: 8.25 🟢 ( previous job: 8.71, improvement: 94.71%)
  • fedora-41-xfce_exec-data-simplex: 74.08 🟢 ( previous job: 75.53, improvement: 98.07%)
  • fedora-41-xfce_exec-data-duplex: 62.20 🟢 ( previous job: 71.56, improvement: 86.92%)
  • fedora-41-xfce_exec-data-duplex-root: 100.20 🟢 ( previous job: 109.13, improvement: 91.82%)
  • fedora-41-xfce_socket-data-duplex: 153.77 :small_red_triangle_up: ( previous job: 150.61, degradation: 102.10%)
  • whonix-gateway-17_exec-root: 40.36 🟢 ( previous job: 40.43, improvement: 99.82%)
  • whonix-gateway-17_exec-data-simplex: 74.81 🟢 ( previous job: 78.32, improvement: 95.52%)
  • whonix-gateway-17_exec-data-duplex: 77.92 :small_red_triangle_up: ( previous job: 76.65, degradation: 101.66%)
  • whonix-gateway-17_exec-data-duplex-root: 79.61 🟢 ( previous job: 88.52, improvement: 89.94%)
  • whonix-gateway-17_socket-data-duplex: 170.27 🟢 ( previous job: 171.76, improvement: 99.13%)
  • whonix-workstation-17_exec: 7.78 :small_red_triangle_up: ( previous job: 7.67, degradation: 101.41%)
  • whonix-workstation-17_exec-root: 54.41 🟢 ( previous job: 58.26, improvement: 93.38%)
  • whonix-workstation-17_socket: 7.91 🟢 ( previous job: 8.19, improvement: 96.56%)
  • whonix-workstation-17_socket-root: 8.61 :small_red_triangle_up: ( previous job: 8.13, degradation: 105.86%)
  • whonix-workstation-17_exec-data-simplex: 71.65 🟢 ( previous job: 74.99, improvement: 95.54%)
  • whonix-workstation-17_exec-data-duplex: 71.31 🟢 ( previous job: 72.71, improvement: 98.08%)
  • whonix-workstation-17_exec-data-duplex-root: 98.73 🟢 ( previous job: 99.82, improvement: 98.91%)
  • whonix-workstation-17_socket-data-duplex: 159.62 🟢 ( previous job: 169.50, improvement: 94.17%)
  • dom0_root_seq1m_q8t1_read 3:read_bandwidth_kb: 445255.00 :small_red_triangle_up: ( previous job: 446963.00, degradation: 99.62%)
  • dom0_root_seq1m_q8t1_write 3:write_bandwidth_kb: 183373.00 :green_circle: ( previous job: 129298.00, improvement: 141.82%)
  • dom0_root_seq1m_q1t1_read 3:read_bandwidth_kb: 411690.00 :green_circle: ( previous job: 294295.00, improvement: 139.89%)
  • dom0_root_seq1m_q1t1_write 3:write_bandwidth_kb: 146898.00 :green_circle: ( previous job: 95454.00, improvement: 153.89%)
  • dom0_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 110011.00 :green_circle: ( previous job: 79803.00, improvement: 137.85%)
  • dom0_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 8026.00 :green_circle: ( previous job: 6149.00, improvement: 130.53%)
  • dom0_varlibqubes_seq1m_q8t1_read 3:read_bandwidth_kb: 457693.00 :green_circle: ( previous job: 382273.00, improvement: 119.73%)
  • dom0_varlibqubes_seq1m_q1t1_read 3:read_bandwidth_kb: 439102.00 :green_circle: ( previous job: 437636.00, improvement: 100.33%)
  • dom0_varlibqubes_seq1m_q1t1_write 3:write_bandwidth_kb: 187426.00 :green_circle: ( previous job: 184752.00, improvement: 101.45%)
  • dom0_varlibqubes_rnd4k_q32t1_read 3:read_bandwidth_kb: 94784.00 :green_circle: ( previous job: 62195.00, improvement: 152.40%)
  • dom0_varlibqubes_rnd4k_q32t1_write 3:write_bandwidth_kb: 7214.00 :green_circle: ( previous job: 6479.00, improvement: 111.34%)
  • dom0_varlibqubes_rnd4k_q1t1_read 3:read_bandwidth_kb: 7600.00 :small_red_triangle_up: ( previous job: 7669.00, degradation: 99.10%)
  • fedora-41-xfce_root_seq1m_q8t1_read 3:read_bandwidth_kb: 409120.00 :green_circle: ( previous job: 368309.00, improvement: 111.08%)
  • fedora-41-xfce_root_seq1m_q8t1_write 3:write_bandwidth_kb: 170632.00 :green_circle: ( previous job: 162081.00, improvement: 105.28%)
  • fedora-41-xfce_root_seq1m_q1t1_read 3:read_bandwidth_kb: 313288.00 :small_red_triangle_up: ( previous job: 318716.00, degradation: 98.30%)
  • fedora-41-xfce_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 85044.00 :green_circle: ( previous job: 82694.00, improvement: 102.84%)
  • fedora-41-xfce_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 8307.00 :small_red_triangle_up: ( previous job: 8485.00, degradation: 97.90%)
  • fedora-41-xfce_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 1265.00 :green_circle: ( previous job: 542.00, improvement: 233.39%)
  • fedora-41-xfce_private_seq1m_q8t1_read 3:read_bandwidth_kb: 381161.00 :green_circle: ( previous job: 373957.00, improvement: 101.93%)
  • fedora-41-xfce_private_seq1m_q1t1_read 3:read_bandwidth_kb: 333092.00 :small_red_triangle_up: ( previous job: 334687.00, degradation: 99.52%)
  • fedora-41-xfce_private_seq1m_q1t1_write 3:write_bandwidth_kb: 86931.00 :green_circle: ( previous job: 61534.00, improvement: 141.27%)
  • fedora-41-xfce_private_rnd4k_q32t1_read 3:read_bandwidth_kb: 86944.00 :green_circle: ( previous job: 80283.00, improvement: 108.30%)
  • fedora-41-xfce_private_rnd4k_q32t1_write 3:write_bandwidth_kb: 2211.00 :small_red_triangle_up: ( previous job: 2215.00, degradation: 99.82%)
  • fedora-41-xfce_private_rnd4k_q1t1_read 3:read_bandwidth_kb: 9066.00 :green_circle: ( previous job: 7540.00, improvement: 120.24%)
  • fedora-41-xfce_private_rnd4k_q1t1_write 3:write_bandwidth_kb: 1359.00 :green_circle: ( previous job: 1130.00, improvement: 120.27%)
  • fedora-41-xfce_volatile_seq1m_q8t1_read 3:read_bandwidth_kb: 352225.00 :small_red_triangle_up: ( previous job: 369868.00, degradation: 95.23%)
  • fedora-41-xfce_volatile_seq1m_q1t1_write 3:write_bandwidth_kb: 124319.00 :green_circle: ( previous job: 17567.00, improvement: 707.68%)
  • fedora-41-xfce_volatile_rnd4k_q32t1_read 3:read_bandwidth_kb: 83336.00 :green_circle: ( previous job: 79021.00, improvement: 105.46%)
  • fedora-41-xfce_volatile_rnd4k_q1t1_read 3:read_bandwidth_kb: 8830.00 :green_circle: ( previous job: 7867.00, improvement: 112.24%)
  • fedora-41-xfce_volatile_rnd4k_q1t1_write 3:write_bandwidth_kb: 1910.00 :small_red_triangle_up: ( previous job: 1953.00, degradation: 97.80%)

@marmarek marmarek merged commit 703dd60 into QubesOS:main Apr 27, 2025
3 of 5 checks passed
ben-grande pushed a commit to ben-grande/qubes-core-admin-client that referenced this pull request Jun 7, 2025
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.

Explicitly paused VMs get started on system suspend/resume.
3 participants