Re: Disable (or make configurable and default to off) suspend-then-hibernate behavior in GNOME-3.30

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Hi,

On 24-09-18 17:18, Bastien Nocera wrote:


----- Original Message -----
On Fr, 14.09.18 10:45, mcatanzaro@xxxxxxxxx (mcatanzaro@xxxxxxxxx) wrote:

On Fri, Sep 14, 2018 at 10:16 AM, Ray Strode <rstrode@xxxxxxxxxx> wrote:
But that's bonkers, there's no way systemd can know either.
The only way to make this reliable is if the kernel has a dedicated
hibernate
partition the same size as ram that doesn't get used for anything but
hibernate, right?

I think I agree with Ray... the Workstation kernel should not offer this at
all unless it can be made reliable.

I tend to agree with this actually. I mean, I can understand why the
GNOME folks don't want to expose an opt-in option for this, and want
the lower layers to disable it. In fact I understand it so well, that
I also would prefer if the lower layer from my own systemd PoV
(i.e. the kernel) wouldn't offer us a feature that is known to be
broken and unsupported.

Hence, I think that Fedora kernels should really turn off hibernation
support entirely during compilation if there's no intention to really
support it. This could be done either by compiling out the whole
subsystem's code for it, or maybe with a kernel patch that adds a
kernel cmdline or so, that must be specified to enable this code in
the kernel.

For all other interfaces the kernel provides we assume that it works
correctly if systemd can call into it. It *is* kinda weird if the
hibernation APIs the kernel provides are made available but actually
are not assumed to work properly.

Strongly agreed. Having systemd disable it meant that it could be enabled
and tested without either non-standard commands (whether a kernel option,
a special systemd command, or a GNOME non-UI option), or needing a kernel
recompilation.

There's a "nohibernate" kernel command-line option, but the code doesn't
seem to be well thought out to allow changing the default value:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/kernel/power/hibernate.c

(declaration near the top of the file, and options handling at the bottom)

Maybe this is enough?
-static int nohibernate;
+static int nohibernate = 1;

We will need a new commandline option to re-enable it, but yes otherwise
I think that will be enough, setting this will make "cat /sys/power/disk"
return "[disabled]".

Lennart, Zbyszek, does systemd handle this return value correctly and will
CanHibernate and CanSuspendThenHibernate return false then ?

I guess so (but it would be good to have this confirmed).

I will also start a new thread for this on the fedora kernel list
with the desktop list in the Cc to get input from the kernel team on this.

Regards,

Hans
_______________________________________________
desktop mailing list -- desktop@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to desktop-leave@xxxxxxxxxxxxxxxxxxxxxxx
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@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora Users]     [Fedora KDE]     [Fedora Announce]     [Fedora Docs]     [Fedora Config]     [PAM]     [Red Hat Development]     [Red Hat 9]     [Gimp]     [Yosemite News]

  Powered by Linux