My take on this is that we want the feature, but not as a 'try to see if it works' feature. So my suggestion is as 
follows:
1) We disable it by default
2) We develop some kind of whitelisting system to allow us to enable this on systems we know it works (maybe tie it into the whitelisting system Hans has created for other power saving features?)
3) Once we have this is place we can discuss doing a UI to allow people to tweak behaviour of this, like they do on MacOS X, but it would be a UI that is only visible for people on whitelisted systems to tweak between known behaviours, not a 'try to turn this on to potentially break your system' UI.

Christian


On Fri, Sep 14, 2018 at 7:34 AM Benjamin Berg <bberg@redhat.com> wrote:
Hi,

The issue comes up now, because systemd and gnome-settings-daemon now
implement the SuspendThenHibernate option, which will automatically
hibernate after 3 hours. This is a major change in policy. It is in
particular problematic, as it means that we end up using hibernation by
default, which is (currently) unsupported and likely to result in data
loss for some users.

I believe the following options were proposed:
 1. Create a setting for gnome-settings-daemon to disable the
    SuspendThenHibernate feature and simply always use Suspend.
    Expose this in gnome-control-center.
 2. Disable Hibernate (and SuspendThenHibernate) in systemd(-logind)
 3. Disable hibernation support in the Fedora kernel
 4. Disable SuspendThenHibernate and switch to hybrid suspend

So, as I see it:
1. Adding a GNOME setting
 + Easy to configure by users
 - Requires Fedora specific gnome-settings-daemon and
   gnome-control-center patches and UI changes
 - Looks like hibernation and suspend-then-hibernate is supported,
   while we do not support it

2. Disable hibernation (and suspend-then-hibernate) in systemd
 + Also removed "Hibernate" option from "Power Button action"
   in gnome-control-center (as we don't support it)
 + Easy enough to enable for testing purposes
 + Users get the more desirable suspend-then-hibernate policy by
   default if enabled in systemd.
 * Note that I am unsure if this is currently easily possible.
   A systemd patch may be necessary to make this configurable.

3. Hibernation disabled in Kernel
 + Prevents this issue completely
 + Makes it very clear we do not support hibernate
 - Makes it hard to test hibernation
 - Probably makes some existing users rather unhappy
 * This would be a decision for the kernel team to make.

4. Prefer hybrid suspend (rather than SuspendThenHibernate)
 + Might result in some extra testing exposure for hibernation
 + Added feature to not loose data when battery runs out
 - No advantage with regard to battery runtime
   (suspend-then-hibernate is all about power saving)
 - Is a also a bigger change in default policy in my view
 - Makes suspend operation much slower
 * This might be easiest to implement in systemd, not sure though
   i.e. disable SuspendThenHibernate and change default Suspend action

I hope that this summarises the discussion sufficiently and I didn't
miss important bits.

Benjamin

On Thu, 2018-09-13 at 15:45 +0200, Hans de Goede wrote:
> Hi Benjamin, Carlos,
>
> I'm mailing you 2 because you maintain g-s-d now.
>
> As discussed on the Fedora desktop mailinglist in the
>
> "system now hibernates automatically 3 hours after suspend ?"
>
> thread, the suspend-then-hibernate behavior is not really
> ready for mainstream use yet (according to the systemd folks).
>
> Also from a kernel pov all of a sudden using hibernate is
> a huge change and involves code paths which no other major
> distro has been using sofar.
>
> So we really need to disable this for Fedora 29. And as
> mentioned in the thread when we decide to enable this for
> a future release, it really needs to go through the changes
> process so that it is well document we are changing this
> and people will have a clue what is the likely culprit
> if leaving their laptop suspend for > 3h all of a sudden
> breaks.
>
> Regards,
>
> Hans
>
>
>
_______________________________________________
desktop mailing list -- desktop@lists.fedoraproject.org
To unsubscribe send an email to desktop-leave@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/desktop@lists.fedoraproject.org