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

qvm-create-default-dvm whonix-ws - ERROR: Cannot start qubes-guid! #1591

Closed
adrelanos opened this Issue Jan 6, 2016 · 2 comments

Comments

Projects
None yet
2 participants
@adrelanos
Member

adrelanos commented Jan 6, 2016

qvm-create-default-dvm whonix-ws
--> Using TemplateVM: whonix-ws
--> Creating directory: /var/lib/qubes/appvms/whonix-ws-dvm
--> Copying the template's private image: /var/lib/qubes/vm-templates/whonix-ws/private.img
--> Creating volatile image: /var/lib/qubes/appvms/whonix-ws-dvm/volatile.img...
--> Creating icon symlink: /var/lib/qubes/appvms/whonix-ws-dvm/icon.png -> /usr/share/icons/hicolor/128x128/devices/appvm-gray.png
--> Creating default whitelisted apps list: /var/lib/qubes/appvms/whonix-ws-dvm/whitelisted-appmenus.list
--> Creating volatile image: /var/lib/qubes/appvms/whonix-ws-dvm/volatile.img...
--> Loading the VM (type = AppVM)...
--> Starting Qubes DB...
--> Setting Qubes DB info for the VM...
--> Updating firewall rules...
--> Starting the VM...
--> Starting Qubes GUId...
Connecting to VM's GUI agent: ..............................................timeout
ERROR: Cannot start qubes-guid!

Happening since I updated 3.0 using the Qubes testing repositories to 3.1.

How to reproduce.

  1. remove any eventually already existing Whonix DispVMs
  2. shut down all Whonix VMs
  3. run qvm-create-default-dvm whonix-ws
@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Jan 6, 2016

Member

whonix-legacy.service is set to start before qubes-gui-agent.service, but after qubes-dvm.service. But qubes-dvm.service waits for gui agent startup, so it is dependency cycle. I think it shouldn't be set Aftter=qubes-dvm.service, maybe it should be even before it.

Systemd doesn't detect this dependency cycle because qubes-dvm.service doesn't have explicit After=qubes-gui-agent.service. But setting this, would lower concurrency of the boot process, especially in case of non-DispVM startup.

Background: qubes-dvm.service is the point where DispVM savefile is created. So everything before is running during savefile creation, everything after - in actual DispVM.

Member

marmarek commented Jan 6, 2016

whonix-legacy.service is set to start before qubes-gui-agent.service, but after qubes-dvm.service. But qubes-dvm.service waits for gui agent startup, so it is dependency cycle. I think it shouldn't be set Aftter=qubes-dvm.service, maybe it should be even before it.

Systemd doesn't detect this dependency cycle because qubes-dvm.service doesn't have explicit After=qubes-gui-agent.service. But setting this, would lower concurrency of the boot process, especially in case of non-DispVM startup.

Background: qubes-dvm.service is the point where DispVM savefile is created. So everything before is running during savefile creation, everything after - in actual DispVM.

adrelanos added a commit to Whonix/whonix-legacy that referenced this issue Jan 6, 2016

Removed 'After=qubes-dvm.service'.
This caused the following issue.
'qvm-create-default-dvm whonix-ws - ERROR: Cannot start qubes-guid!'

Thanks to @marmarek for debugging this issue!

Fixes QubesOS/qubes-issues#1591
@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Jan 6, 2016

Member

Fixed in git. Will land in Whonix 13.

Thanks so much for debugging this!

Member

adrelanos commented Jan 6, 2016

Fixed in git. Will land in Whonix 13.

Thanks so much for debugging this!

@adrelanos adrelanos closed this Jan 6, 2016

adrelanos added a commit to adrelanos/whonix-base-files that referenced this issue Jan 8, 2016

Removed 'After=qubes-dvm.service'.
This caused a different issue earlier.
'qvm-create-default-dvm whonix-ws - ERROR: Cannot start qubes-guid!'

QubesOS/qubes-issues#1591

Thanks to @marmarek for debugging the other issue!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment