[Oneiric-Topic] Simplifying system sleep functions
Tony Espy
espy at canonical.com
Thu Apr 21 16:06:19 UTC 2011
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
More information about the ubuntu-desktop
mailing list