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

Remove "pause VM" button from Qubes Manager #1855

Closed
adrelanos opened this Issue Mar 19, 2016 · 12 comments

Comments

7 participants
@adrelanos
Member

adrelanos commented Mar 19, 2016

Currently this is not the case. #1663 implemented running suspend / resume scripts on host suspend / resume, but not on VM pause / resume in QVMM.

I think this has a good chance of causing some confusion for example for #1764. Users might pause their sys-whonix using QVMM for various reasons. (make more RAM available, travel with Tor disabled, etc.) Then when they resume sys-whonix, they will be confused. (Just as #1663 caused confusion.)

Please implement running suspend / resume scripts also on VM pause / resume.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 19, 2016

Member

I think this is bad idea, especially qubes.SuspendPreAll there. Pausing a VM may be used also if you spot some misbehaving of a VM and want to collect some evidences (memory dump etc). Then letting the VM know it will be paused in a moment is the worst thing to do...

make more RAM available

Pausing VM doesn't release RAM.

Also if you want to simply cut sys-whonix out of network access, do exactly that by setting its netvm to none, not use a side effect of pausing VM. It will cause more problems than just that clock synchronization. For example if you start another sys-whonix connected VM, it will fail because backend driver will not initialize.
I think in the "pause" button in Qubes Manger in its current shape (without description what it really does) makes more confusion than good. Maybe it should be removed from there?

Member

marmarek commented Mar 19, 2016

I think this is bad idea, especially qubes.SuspendPreAll there. Pausing a VM may be used also if you spot some misbehaving of a VM and want to collect some evidences (memory dump etc). Then letting the VM know it will be paused in a moment is the worst thing to do...

make more RAM available

Pausing VM doesn't release RAM.

Also if you want to simply cut sys-whonix out of network access, do exactly that by setting its netvm to none, not use a side effect of pausing VM. It will cause more problems than just that clock synchronization. For example if you start another sys-whonix connected VM, it will fail because backend driver will not initialize.
I think in the "pause" button in Qubes Manger in its current shape (without description what it really does) makes more confusion than good. Maybe it should be removed from there?

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Mar 21, 2016

Member

Marek Marczykowski-Górecki:

I think this is bad idea, especially qubes.SuspendPreAll there.
Pausing a VM may be used also if you spot some misbehaving of a VM
and want to collect some evidences (memory dump etc). Then letting
the VM know it will be paused in a moment is the worst thing to
do...

I see.

make more RAM available

Pausing VM doesn't release RAM.

Also if you want to simply cut sys-whonix out of network access, do
exactly that by setting its netvm to none, not use a side effect of
pausing VM. It will cause more problems than just that clock
synchronization. For example if you start another sys-whonix
connected VM, it will fail because backend driver will not
initialize. I think in the "pause" button in Qubes Manger in its
current shape (without description what it really does) makes more
confusion than good. Maybe it should be removed from there?

I think so, because it is confusing.

But maybe this is something very advanced people such as you (with
skills to analyze a memory dump) depend on? Then we need it as some
advancement option because we don't want to make your debugging harder.

And perhaps replaced by a VM freeze to disk feature [comparable to what
we are used to like other virtualizers] that gets the hooks dispatched?

Member

adrelanos commented Mar 21, 2016

Marek Marczykowski-Górecki:

I think this is bad idea, especially qubes.SuspendPreAll there.
Pausing a VM may be used also if you spot some misbehaving of a VM
and want to collect some evidences (memory dump etc). Then letting
the VM know it will be paused in a moment is the worst thing to
do...

I see.

make more RAM available

Pausing VM doesn't release RAM.

Also if you want to simply cut sys-whonix out of network access, do
exactly that by setting its netvm to none, not use a side effect of
pausing VM. It will cause more problems than just that clock
synchronization. For example if you start another sys-whonix
connected VM, it will fail because backend driver will not
initialize. I think in the "pause" button in Qubes Manger in its
current shape (without description what it really does) makes more
confusion than good. Maybe it should be removed from there?

I think so, because it is confusing.

But maybe this is something very advanced people such as you (with
skills to analyze a memory dump) depend on? Then we need it as some
advancement option because we don't want to make your debugging harder.

And perhaps replaced by a VM freeze to disk feature [comparable to what
we are used to like other virtualizers] that gets the hooks dispatched?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 21, 2016

Member

I think so, because it is confusing.
But maybe this is something very advanced people such as you (with skills to analyze a memory dump) depend on? Then we need it as some advancement option because we don't want to make your debugging harder.

Maybe simply remove the button, but leave it in the context menu? Maybe also name it differently? But IMO "pause" is exactly what it does (not "suspend"). Or maybe remove it completely from Qubes Manager and leave only as command line option (I'm ok with that)?
/cc @bnvk

And perhaps replaced by a VM freeze to disk feature [comparable to what we are used to like other virtualizers] that gets the hooks dispatched?

That's good idea, but we don't have support for it just now.

Member

marmarek commented Mar 21, 2016

I think so, because it is confusing.
But maybe this is something very advanced people such as you (with skills to analyze a memory dump) depend on? Then we need it as some advancement option because we don't want to make your debugging harder.

Maybe simply remove the button, but leave it in the context menu? Maybe also name it differently? But IMO "pause" is exactly what it does (not "suspend"). Or maybe remove it completely from Qubes Manager and leave only as command line option (I'm ok with that)?
/cc @bnvk

And perhaps replaced by a VM freeze to disk feature [comparable to what we are used to like other virtualizers] that gets the hooks dispatched?

That's good idea, but we don't have support for it just now.

@bnvk

This comment has been minimized.

Show comment
Hide comment
@bnvk

bnvk Mar 22, 2016

Maybe simply remove the button, but leave it in the context menu? Maybe also name it differently? But IMO "pause" is exactly what it does (not "suspend"). Or maybe remove it completely from Qubes Manager and leave only as command line option (I'm ok with that)?

Yep! I've never once pressed the Pause button. I have no idea what it does and no notifications have ever instructed me to use it. Hiding it in the existing GUI (and new Qubes Manager) sounds right choice to me!

bnvk commented Mar 22, 2016

Maybe simply remove the button, but leave it in the context menu? Maybe also name it differently? But IMO "pause" is exactly what it does (not "suspend"). Or maybe remove it completely from Qubes Manager and leave only as command line option (I'm ok with that)?

Yep! I've never once pressed the Pause button. I have no idea what it does and no notifications have ever instructed me to use it. Hiding it in the existing GUI (and new Qubes Manager) sounds right choice to me!

@bnvk bnvk referenced this issue Mar 23, 2016

Closed

Implement a more intuitive Qubes Manager #1870

1 of 12 tasks complete

@marmarek marmarek changed the title from run suspend / resume scripts also on VM pause / resume to Remove "pause VM" button from Qubes Manager Apr 4, 2016

@marmarek marmarek added this to the Release 3.2 milestone Apr 4, 2016

@Rudd-O

This comment has been minimized.

Show comment
Hide comment
@Rudd-O

Rudd-O Jun 8, 2016

I use pause substantially.

Better document the appropriate use of the pause button on the tooltip, than to remove it.

Rudd-O commented Jun 8, 2016

I use pause substantially.

Better document the appropriate use of the pause button on the tooltip, than to remove it.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Jun 8, 2016

Member

There are multiple issues with pause functionality:

  • #1611 (Explicitly paused VMs get started on system suspend/resume.)
  • VM clock gets desynchronized
  • some tools will hang on communication with paused VM

I think it is't mature enough to be exposed in Qubes Manager. But still should be available from command line interface. What do you think?

Member

marmarek commented Jun 8, 2016

There are multiple issues with pause functionality:

  • #1611 (Explicitly paused VMs get started on system suspend/resume.)
  • VM clock gets desynchronized
  • some tools will hang on communication with paused VM

I think it is't mature enough to be exposed in Qubes Manager. But still should be available from command line interface. What do you think?

@Rudd-O

This comment has been minimized.

Show comment
Hide comment
@Rudd-O

Rudd-O Jun 8, 2016

Note these issues in the docs and in the tooltip, and then remove the
notes once the issues get fixed. In my humble opinion.

You can also demote the pausing functionality to an advanced mode, if
you so choose.

The problems with communicating with paused VMs (in my view the most
grave problem) should be solved by either notifying the user that the
communication tool is going to hang, or by making the tool fail
explicitly and notify the user.

Usually if you pause a VM there is a reason why you want to pause it,
and relegating it to a multicharacter command line type session is
probably not a good idea.

Rudd-O
http://rudd-o.com/

Rudd-O commented Jun 8, 2016

Note these issues in the docs and in the tooltip, and then remove the
notes once the issues get fixed. In my humble opinion.

You can also demote the pausing functionality to an advanced mode, if
you so choose.

The problems with communicating with paused VMs (in my view the most
grave problem) should be solved by either notifying the user that the
communication tool is going to hang, or by making the tool fail
explicitly and notify the user.

Usually if you pause a VM there is a reason why you want to pause it,
and relegating it to a multicharacter command line type session is
probably not a good idea.

Rudd-O
http://rudd-o.com/
@tasket

This comment has been minimized.

Show comment
Hide comment
@tasket

tasket Jun 13, 2016

Pause can be very useful to the right people. But I think the key issues here are getting proper feedback in the UI, and distinguishing the user's intent in pausing the vm (versus some automatic trigger of pause, like sleep, which implies automatic un-pause).

I think pause should be indicated in the titlebars of each window of a paused vm. Perhaps also add a dom0 mouseover tooltip for them. Not sure if that needs a new issue.

tasket commented Jun 13, 2016

Pause can be very useful to the right people. But I think the key issues here are getting proper feedback in the UI, and distinguishing the user's intent in pausing the vm (versus some automatic trigger of pause, like sleep, which implies automatic un-pause).

I think pause should be indicated in the titlebars of each window of a paused vm. Perhaps also add a dom0 mouseover tooltip for them. Not sure if that needs a new issue.

@andrewdavidwong

This comment has been minimized.

Show comment
Hide comment
@andrewdavidwong

andrewdavidwong Jun 13, 2016

Member

I think pause should be indicated in the titlebars of each window of a paused vm. Perhaps also add a dom0 mouseover tooltip for them. Not sure if that needs a new issue.

I like that idea. As for whether it should be filed under a separate issue, that depends on the outcome of this issue. If this issue turns out to be a UX redesign of the pause functionality, your comment belongs here (IMHO). If this issue remains about removing/demoting access to the pause function from/in Qubes Manager, then your idea should probably be filed as a separate issue.

Member

andrewdavidwong commented Jun 13, 2016

I think pause should be indicated in the titlebars of each window of a paused vm. Perhaps also add a dom0 mouseover tooltip for them. Not sure if that needs a new issue.

I like that idea. As for whether it should be filed under a separate issue, that depends on the outcome of this issue. If this issue turns out to be a UX redesign of the pause functionality, your comment belongs here (IMHO). If this issue remains about removing/demoting access to the pause function from/in Qubes Manager, then your idea should probably be filed as a separate issue.

@Rudd-O

This comment has been minimized.

Show comment
Hide comment
@Rudd-O

Rudd-O Jun 16, 2016

On 06/13/2016 11:03 PM, Andrew David Wong wrote:

I think pause should be indicated in the titlebars of each window
of a paused vm. Perhaps also add a dom0 mouseover tooltip for
them. Not sure if that needs a new issue.

I like that idea. As for whether it should be filed under a separate
issue, that depends on the outcome of this issue. If this issue turns
out to be a UX redesign of the pause functionality, your comment
belongs here (IMHO). If this issue remains about removing/demoting
access to the pause function from/in Qubes Manager, then your idea
should probably be filed as a separate issue.

An icon "pause" ( || ) in the titlebar with a tooltip saying "This VM is
paused. Check the Qubes manager to unpause it." or something of the sort?

Rudd-O
http://rudd-o.com/

Rudd-O commented Jun 16, 2016

On 06/13/2016 11:03 PM, Andrew David Wong wrote:

I think pause should be indicated in the titlebars of each window
of a paused vm. Perhaps also add a dom0 mouseover tooltip for
them. Not sure if that needs a new issue.

I like that idea. As for whether it should be filed under a separate
issue, that depends on the outcome of this issue. If this issue turns
out to be a UX redesign of the pause functionality, your comment
belongs here (IMHO). If this issue remains about removing/demoting
access to the pause function from/in Qubes Manager, then your idea
should probably be filed as a separate issue.

An icon "pause" ( || ) in the titlebar with a tooltip saying "This VM is
paused. Check the Qubes manager to unpause it." or something of the sort?

Rudd-O
http://rudd-o.com/
@andrewdavidwong

This comment has been minimized.

Show comment
Hide comment
@andrewdavidwong

andrewdavidwong Jul 29, 2016

Member

There are many possibilities. Could be something simple like:

Unpaused title bar:

[untrusted] Some Website - Mozilla Firefox

Paused title bar:

[untrusted | *PAUSED*] Some Website - Mozilla Firefox

I also like your tooltip suggestion above, @Rudd-O. Created #2211 for it.

Member

andrewdavidwong commented Jul 29, 2016

There are many possibilities. Could be something simple like:

Unpaused title bar:

[untrusted] Some Website - Mozilla Firefox

Paused title bar:

[untrusted | *PAUSED*] Some Website - Mozilla Firefox

I also like your tooltip suggestion above, @Rudd-O. Created #2211 for it.

@marmarek marmarek modified the milestones: Release 4.0, Release 3.2 Nov 19, 2016

marmarta added a commit to marmarta/qubes-manager that referenced this issue Jul 12, 2018

Add explanatory tooltip to Pause in Qube Manager
Adds an explanatory (and slightly cautious, with a big EXPERIMENTAL
at the end) tooltip to the Pause action in Qube Manager.

references QubesOS/qubes-issues#1855

@marmarta marmarta referenced this issue in QubesOS/qubes-manager Jul 12, 2018

Merged

Add explanatory tooltip to Pause in Qube Manager #108

@marmarta

This comment has been minimized.

Show comment
Hide comment
@marmarta

marmarta Jul 12, 2018

I've added a tooltip with explanation and warning (according to @andrewdavidwong's wording in #2211 ) - I think this one can be closed.

I've added a tooltip with explanation and warning (according to @andrewdavidwong's wording in #2211 ) - I think this one can be closed.

@marmarta marmarta closed this Jul 12, 2018

@qubesos-bot qubesos-bot referenced this issue in QubesOS/updates-status Jul 18, 2018

Open

manager v4.0.19 (r4.0) #600

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment