Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-22 Thread Tony Espy

On 04/22/2011 10:27 AM, Ted Gould wrote:

On Thu, 2011-04-21 at 12:06 -0400, Tony Espy wrote:

On 04/21/2011 11:49 AM, Ted Gould wrote:

On Thu, 2011-04-21 at 11:34 -0400, Tony Espy wrote:

On 04/19/2011 08:09 PM, Jason Warner wrote:

Hi Everyone - Sending this on behalf of John Lea, desktop design lead.

==

Currently Ubuntu contains two separate sleep functions, suspend and
hibernate.  This choice confuses users and is a un-necessary
complication to 'sleeping' the computer.  The proposed change is to
combine both 'suspend' and 'hibernate' into a single 'sleep' function.
When the user presses 'sleep', the computer should both suspend and
hibernate simultaneously.  The computer remains suspended for a set
period of time (e.g. 30min) or until the battery charge falls below a
set level.  At the point the suspend state is discarded, and if  the
user wakes the computer after this point their state is restored from
hibernate.  However if the user wakes the computer before the suspend
state is discarded, the computer is restored from 'suspend' and the
'hibernate' state is discarded.


I'm not a fan of this idea.

If suspend works for the vast majority of users, why complicate it by
adding a timed "auto-hibernate" to the equation?  As a few folks have
pointed out, what if hibernate fails?  What if the BIOS doesn't properly
support a wake timer?

I'm pretty sure the latter criteria for triggering hibernate ( critical
low-battery event while suspended ) already works.  It essentially wakes
the system from suspend, the power manager notices the battery is
critically low, and invokes a hibernate.  The timed scenario would work
in a similar manner, except that after a timer event wakes the system,
the power manager would have to have added logic to trigger the hibernate.

I'm much more in favor of hiding or even removing hibernate from the UI,
as long as it remains an option for "critical low-battery" event for
those systems that properly support hibernate.


I think these are all valid cases, but I think that we should support
this feature.  I think how we should handle this is with a whitelist if
machines that we know hibernate works on.  We can provide instructions
on adding your machine to that list if you want.  Otherwise machines
that get certified by a vendor that cares about Ubuntu could ship their
machine in that whitelist.


Two words come to mind..."maintenance nightmare".  ;)

After having lived through OEM-hell the last three months dealing with
ACPI stress testing and hibernate failures on Sandy Bridge machines, the
idea of maintaining a whitelist of machines that are known to have a
working hibernate function, doesn't seem very practical to me.


I'm confused, wouldn't your work there be effectively building that
whitelist?  Sounds like work you've already done ;-)


Ah, there you go, volunteering me for work items!  We can talk about 
this over beers in Budapest!



What I think this does, and I don't believe it's really a bad thing, is
makes it so there are effectively two Ubuntu experiences.  That which
you get from installing off of the CD on random hardware, and that which
you get when you use a hardware vendor that cares about Ubuntu.  I think
that we need to make the experience the best we can for hardware vendors
that want to participate in Ubuntu -- and provide reasonable fallback
for those who don't.


Personally, if we really want to consider this idea, I think we need to
put cycles into making hibernate work better first ( faster, more user
feedback, ... ).

Another alternative would be to explore something more radical, along
the lines of what OS X does, which actually tries to combine hibernate
and sleep as opposed to running them in a serial fashion as proposed.


So I guess that'd be the list of things we should discuss in the
session.  What are the requirements and changes we'd need to make
hibernate work well enough to make this a reality?  We can't budget time
if we don't know what we want :-)

Also, I thought this *was* how OSX did things.  Can you explain how that
works as I don't know.


My understanding is that macbooks running the latest versions of OS X, 
always write a hibernate image to disk when sleeping, however the 
machine still goes into S3 (sleep).  If the system is resumed and power 
has never dropped below critical level, then it's just like a normal 
suspend/resume.  If however the system runs out of juice...the next time 
it's booted, it will resume from the hibernate image.


This is different than a normal Ubuntu install, where sleep == suspend, 
with no hibernate image written.  If the battery reaches a critical 
level, the machine is woken up, and the power manager will initiate a 
hibernate ( unless the user has changed the default setting ).


pm-utils does support something called pm-suspend-hybrid which acts like 
the OS X sleep, but I have little experience with it.


Does anybody care to comment on the curren

Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-22 Thread Ted Gould
On Thu, 2011-04-21 at 12:06 -0400, Tony Espy wrote:
> On 04/21/2011 11:49 AM, Ted Gould wrote:
> > On Thu, 2011-04-21 at 11:34 -0400, Tony Espy wrote:
> >> On 04/19/2011 08:09 PM, Jason Warner wrote:
> >>> Hi Everyone - Sending this on behalf of John Lea, desktop design lead.
> >>>
> >>> ==
> >>>
> >>> Currently Ubuntu contains two separate sleep functions, suspend and
> >>> hibernate.  This choice confuses users and is a un-necessary
> >>> complication to 'sleeping' the computer.  The proposed change is to
> >>> combine both 'suspend' and 'hibernate' into a single 'sleep' function.
> >>>When the user presses 'sleep', the computer should both suspend and
> >>> hibernate simultaneously.  The computer remains suspended for a set
> >>> period of time (e.g. 30min) or until the battery charge falls below a
> >>> set level.  At the point the suspend state is discarded, and if  the
> >>> user wakes the computer after this point their state is restored from
> >>> hibernate.  However if the user wakes the computer before the suspend
> >>> state is discarded, the computer is restored from 'suspend' and the
> >>> 'hibernate' state is discarded.
> >>
> >> I'm not a fan of this idea.
> >>
> >> If suspend works for the vast majority of users, why complicate it by
> >> adding a timed "auto-hibernate" to the equation?  As a few folks have
> >> pointed out, what if hibernate fails?  What if the BIOS doesn't properly
> >> support a wake timer?
> >>
> >> I'm pretty sure the latter criteria for triggering hibernate ( critical
> >> low-battery event while suspended ) already works.  It essentially wakes
> >> the system from suspend, the power manager notices the battery is
> >> critically low, and invokes a hibernate.  The timed scenario would work
> >> in a similar manner, except that after a timer event wakes the system,
> >> the power manager would have to have added logic to trigger the hibernate.
> >>
> >> I'm much more in favor of hiding or even removing hibernate from the UI,
> >> as long as it remains an option for "critical low-battery" event for
> >> those systems that properly support hibernate.
> >
> > I think these are all valid cases, but I think that we should support
> > this feature.  I think how we should handle this is with a whitelist if
> > machines that we know hibernate works on.  We can provide instructions
> > on adding your machine to that list if you want.  Otherwise machines
> > that get certified by a vendor that cares about Ubuntu could ship their
> > machine in that whitelist.
> 
> Two words come to mind..."maintenance nightmare".  ;)
> 
> After having lived through OEM-hell the last three months dealing with 
> ACPI stress testing and hibernate failures on Sandy Bridge machines, the 
> idea of maintaining a whitelist of machines that are known to have a 
> working hibernate function, doesn't seem very practical to me.

I'm confused, wouldn't your work there be effectively building that
whitelist?  Sounds like work you've already done ;-)

> > What I think this does, and I don't believe it's really a bad thing, is
> > makes it so there are effectively two Ubuntu experiences.  That which
> > you get from installing off of the CD on random hardware, and that which
> > you get when you use a hardware vendor that cares about Ubuntu.  I think
> > that we need to make the experience the best we can for hardware vendors
> > that want to participate in Ubuntu -- and provide reasonable fallback
> > for those who don't.
> 
> Personally, if we really want to consider this idea, I think we need to 
> put cycles into making hibernate work better first ( faster, more user 
> feedback, ... ).
> 
> Another alternative would be to explore something more radical, along 
> the lines of what OS X does, which actually tries to combine hibernate 
> and sleep as opposed to running them in a serial fashion as proposed.

So I guess that'd be the list of things we should discuss in the
session.  What are the requirements and changes we'd need to make
hibernate work well enough to make this a reality?  We can't budget time
if we don't know what we want :-)

Also, I thought this *was* how OSX did things.  Can you explain how that
works as I don't know.

--Ted




signature.asc
Description: This is a digitally signed message part
-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-21 Thread Tony Espy

On 04/21/2011 11:49 AM, Ted Gould wrote:

On Thu, 2011-04-21 at 11:34 -0400, Tony Espy wrote:

On 04/19/2011 08:09 PM, Jason Warner wrote:

Hi Everyone - Sending this on behalf of John Lea, desktop design lead.

==

Currently Ubuntu contains two separate sleep functions, suspend and
hibernate.  This choice confuses users and is a un-necessary
complication to 'sleeping' the computer.  The proposed change is to
combine both 'suspend' and 'hibernate' into a single 'sleep' function.
   When the user presses 'sleep', the computer should both suspend and
hibernate simultaneously.  The computer remains suspended for a set
period of time (e.g. 30min) or until the battery charge falls below a
set level.  At the point the suspend state is discarded, and if  the
user wakes the computer after this point their state is restored from
hibernate.  However if the user wakes the computer before the suspend
state is discarded, the computer is restored from 'suspend' and the
'hibernate' state is discarded.


I'm not a fan of this idea.

If suspend works for the vast majority of users, why complicate it by
adding a timed "auto-hibernate" to the equation?  As a few folks have
pointed out, what if hibernate fails?  What if the BIOS doesn't properly
support a wake timer?

I'm pretty sure the latter criteria for triggering hibernate ( critical
low-battery event while suspended ) already works.  It essentially wakes
the system from suspend, the power manager notices the battery is
critically low, and invokes a hibernate.  The timed scenario would work
in a similar manner, except that after a timer event wakes the system,
the power manager would have to have added logic to trigger the hibernate.

I'm much more in favor of hiding or even removing hibernate from the UI,
as long as it remains an option for "critical low-battery" event for
those systems that properly support hibernate.


I think these are all valid cases, but I think that we should support
this feature.  I think how we should handle this is with a whitelist if
machines that we know hibernate works on.  We can provide instructions
on adding your machine to that list if you want.  Otherwise machines
that get certified by a vendor that cares about Ubuntu could ship their
machine in that whitelist.


Two words come to mind..."maintenance nightmare".  ;)

After having lived through OEM-hell the last three months dealing with 
ACPI stress testing and hibernate failures on Sandy Bridge machines, the 
idea of maintaining a whitelist of machines that are known to have a 
working hibernate function, doesn't seem very practical to me.



What I think this does, and I don't believe it's really a bad thing, is
makes it so there are effectively two Ubuntu experiences.  That which
you get from installing off of the CD on random hardware, and that which
you get when you use a hardware vendor that cares about Ubuntu.  I think
that we need to make the experience the best we can for hardware vendors
that want to participate in Ubuntu -- and provide reasonable fallback
for those who don't.


Personally, if we really want to consider this idea, I think we need to 
put cycles into making hibernate work better first ( faster, more user 
feedback, ... ).


Another alternative would be to explore something more radical, along 
the lines of what OS X does, which actually tries to combine hibernate 
and sleep as opposed to running them in a serial fashion as proposed.


/t




--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-21 Thread Ted Gould
On Thu, 2011-04-21 at 11:34 -0400, Tony Espy wrote:
> On 04/19/2011 08:09 PM, Jason Warner wrote:
> > Hi Everyone - Sending this on behalf of John Lea, desktop design lead.
> >
> > ==
> >
> > Currently Ubuntu contains two separate sleep functions, suspend and
> > hibernate.  This choice confuses users and is a un-necessary
> > complication to 'sleeping' the computer.  The proposed change is to
> > combine both 'suspend' and 'hibernate' into a single 'sleep' function.
> >   When the user presses 'sleep', the computer should both suspend and
> > hibernate simultaneously.  The computer remains suspended for a set
> > period of time (e.g. 30min) or until the battery charge falls below a
> > set level.  At the point the suspend state is discarded, and if  the
> > user wakes the computer after this point their state is restored from
> > hibernate.  However if the user wakes the computer before the suspend
> > state is discarded, the computer is restored from 'suspend' and the
> > 'hibernate' state is discarded.
> 
> I'm not a fan of this idea.
> 
> If suspend works for the vast majority of users, why complicate it by 
> adding a timed "auto-hibernate" to the equation?  As a few folks have 
> pointed out, what if hibernate fails?  What if the BIOS doesn't properly 
> support a wake timer?
> 
> I'm pretty sure the latter criteria for triggering hibernate ( critical 
> low-battery event while suspended ) already works.  It essentially wakes 
> the system from suspend, the power manager notices the battery is 
> critically low, and invokes a hibernate.  The timed scenario would work 
> in a similar manner, except that after a timer event wakes the system, 
> the power manager would have to have added logic to trigger the hibernate.
> 
> I'm much more in favor of hiding or even removing hibernate from the UI, 
> as long as it remains an option for "critical low-battery" event for 
> those systems that properly support hibernate.

I think these are all valid cases, but I think that we should support
this feature.  I think how we should handle this is with a whitelist if
machines that we know hibernate works on.  We can provide instructions
on adding your machine to that list if you want.  Otherwise machines
that get certified by a vendor that cares about Ubuntu could ship their
machine in that whitelist.

What I think this does, and I don't believe it's really a bad thing, is
makes it so there are effectively two Ubuntu experiences.  That which
you get from installing off of the CD on random hardware, and that which
you get when you use a hardware vendor that cares about Ubuntu.  I think
that we need to make the experience the best we can for hardware vendors
that want to participate in Ubuntu -- and provide reasonable fallback
for those who don't.

--Ted



signature.asc
Description: This is a digitally signed message part
-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-21 Thread Tony Espy

On 04/19/2011 08:09 PM, Jason Warner wrote:

Hi Everyone - Sending this on behalf of John Lea, desktop design lead.

==

Currently Ubuntu contains two separate sleep functions, suspend and
hibernate.  This choice confuses users and is a un-necessary
complication to 'sleeping' the computer.  The proposed change is to
combine both 'suspend' and 'hibernate' into a single 'sleep' function.
  When the user presses 'sleep', the computer should both suspend and
hibernate simultaneously.  The computer remains suspended for a set
period of time (e.g. 30min) or until the battery charge falls below a
set level.  At the point the suspend state is discarded, and if  the
user wakes the computer after this point their state is restored from
hibernate.  However if the user wakes the computer before the suspend
state is discarded, the computer is restored from 'suspend' and the
'hibernate' state is discarded.


I'm not a fan of this idea.

If suspend works for the vast majority of users, why complicate it by 
adding a timed "auto-hibernate" to the equation?  As a few folks have 
pointed out, what if hibernate fails?  What if the BIOS doesn't properly 
support a wake timer?


I'm pretty sure the latter criteria for triggering hibernate ( critical 
low-battery event while suspended ) already works.  It essentially wakes 
the system from suspend, the power manager notices the battery is 
critically low, and invokes a hibernate.  The timed scenario would work 
in a similar manner, except that after a timer event wakes the system, 
the power manager would have to have added logic to trigger the hibernate.


I'm much more in favor of hiding or even removing hibernate from the UI, 
as long as it remains an option for "critical low-battery" event for 
those systems that properly support hibernate.


Regards,
/tony




--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-20 Thread Didier Roche
Le mercredi 20 avril 2011 à 17:38 +1000, Christopher James Halse Rogers
a écrit :
> 
> I think that reliability will be the determining factor in whether
this
> is usable or not.  This behaviour would be a win if I don't have to
> worry that hibernate's not going to work - or that my laptop's going
to
> wake up in my backpack and then not shut down properly.

I totally agree with Christopher. The recent discussion on ubuntu-devel
showed that hibernate was broken on a quite huge extend of
hardwares/drivers, especially blob driver where we have no control over
at all (IIRC, nvidia doesn't work when resuming from hibernate. At
least, all my hardware with that card never had for me).

Didier


-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-20 Thread Christopher James Halse Rogers
On Tue, 2011-04-19 at 21:17 -0400, Mathieu Trudel-Lapierre wrote:
> On Tue, Apr 19, 2011 at 8:09 PM, Jason Warner
>  wrote:
> [...]
> > 'sleep', the computer should both suspend and hibernate simultaneously.  The
> > computer remains suspended for a set period of time (e.g. 30min) or until
> > the battery charge falls below a set level.  At the point the suspend state
> > is discarded, and if  the user wakes the computer after this point their
> > state is restored from hibernate.  However if the user wakes the computer
> 
> Won't this not work at all, given that in S3 nothing runs on the CPU,
> and roughly just the RAM should be powered to maintain programs'
> state?

There's generally a timer that can be set to wake the system at the
appropriate time.  You'd set that timer, wake up at the appropriate
time, and then power down.

> 
> I rather like Jeremy's suggestion of hiding Hibernate behind a
> modifier key. Isn't that what Windows does too? Users migrating would
> then expect it to be to be possible in Ubuntu too, if the computer
> supports hibernating.

Hiding menu items behind modifier keys is *really* undiscoverable; I
think it should be avoided wherever possible.

> 
> Now, whether hibernate works correctly or not is another question, but
> I think we could further refine checks to make it more likely that it
> will work if it's presented as a choice to the user.

I think that reliability will be the determining factor in whether this
is usable or not.  This behaviour would be a win if I don't have to
worry that hibernate's not going to work - or that my laptop's going to
wake up in my backpack and then not shut down properly.


signature.asc
Description: This is a digitally signed message part
-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-19 Thread Mathieu Trudel-Lapierre
On Tue, Apr 19, 2011 at 8:09 PM, Jason Warner
 wrote:
[...]
> 'sleep', the computer should both suspend and hibernate simultaneously.  The
> computer remains suspended for a set period of time (e.g. 30min) or until
> the battery charge falls below a set level.  At the point the suspend state
> is discarded, and if  the user wakes the computer after this point their
> state is restored from hibernate.  However if the user wakes the computer

Won't this not work at all, given that in S3 nothing runs on the CPU,
and roughly just the RAM should be powered to maintain programs'
state?

I rather like Jeremy's suggestion of hiding Hibernate behind a
modifier key. Isn't that what Windows does too? Users migrating would
then expect it to be to be possible in Ubuntu too, if the computer
supports hibernating.

Now, whether hibernate works correctly or not is another question, but
I think we could further refine checks to make it more likely that it
will work if it's presented as a choice to the user.

Mathieu Trudel-Lapierre 
Freenode: cyphermox, Jabber: mathieu...@gmail.com
4096R/EE018C93 1967 8F7D 03A1 8F38 732E  FF82 C126 33E1 EE01 8C93

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Oneiric-Topic] Simplifying system sleep functions

2011-04-19 Thread Jeremy Bicha
n 19 April 2011 20:09, Jason Warner  wrote:
> Currently Ubuntu contains two separate sleep functions, suspend and
> hibernate.  This choice confuses users and is a un-necessary complication to
> 'sleeping' the computer.  The proposed change is to combine both 'suspend'
> and 'hibernate' into a single 'sleep' function.  When the user presses
> 'sleep', the computer should both suspend and hibernate simultaneously.  The
> computer remains suspended for a set period of time (e.g. 30min) or until
> the battery charge falls below a set level.  At the point the suspend state
> is discarded, and if  the user wakes the computer after this point their
> state is restored from hibernate.  However if the user wakes the computer
> before the suspend state is discarded, the computer is restored from
> 'suspend' and the 'hibernate' state is discarded.
> ==

Would Ubuntu keep track of hibernation failures, and use that
information to determine that hibernation is not likely to succeed so
the system would just remain in suspend mode? Because it would be
annoying to have your computer shut off, completely losing system
state when you only told it to go to sleep.

Also, if implemented, how about a hidden function where holding down
the Alt key would change the Sleep button into a hibernate button for
the power user who knows exactly what he wants? This is similar to
what Gnome Shell does, except that they're hiding the Shut Down
button.

Jeremy Bicha

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


[Oneiric-Topic] Simplifying system sleep functions

2011-04-19 Thread Jason Warner
Hi Everyone - Sending this on behalf of John Lea, desktop design lead.

==

Currently Ubuntu contains two separate sleep functions, suspend and
hibernate.  This choice confuses users and is a un-necessary complication to
'sleeping' the computer.  The proposed change is to combine both 'suspend'
and 'hibernate' into a single 'sleep' function.  When the user presses
'sleep', the computer should both suspend and hibernate simultaneously.  The
computer remains suspended for a set period of time (e.g. 30min) or until
the battery charge falls below a set level.  At the point the suspend state
is discarded, and if  the user wakes the computer after this point their
state is restored from hibernate.  However if the user wakes the computer
before the suspend state is discarded, the computer is restored from
'suspend' and the 'hibernate' state is discarded.

==

Cheers,
Jason
-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop