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

Re: Headless server just got suspended by updating systemd



Am 2014-11-24 15:47, schrieb Patrick Wiseman:
On Mon, Nov 24, 2014 at 9:23 AM, Jonathan Dowland <jmtd@debian.org> wrote:
On Mon, Nov 24, 2014 at 06:01:45PM +0900, Joel Rees wrote:
2014/11/24 17:18 "Jonathan Dowland" <jmtd@debian.org>:
> I guess your argument makes sense if you are talking about all source
packages
> from the systemd stable, including logind; it's unlikely Patrick's init
system
> was switched to systemd-as-init as a result of upgrading. Either way
though,
> he's moved from a 'testing' system at some indeterminate point in the
past to
> a 'testing' system now; neither are 'releases' and so the release
schedule has
> little relevance to his situation.

I don't have anything to add to the above, but I just wanted to point out
that your mailer seems to be mangling the quoting here.

So, are you saying he shouldn't report a bug?

I'm not saying that, no. He should report a bug, if he can remember enough of the details to make it a worthwhile report. Right now we have no idea what
piece of software was performing the suspending prior to upgrade.

I don't think I can responsibly report a bug as I have no idea which
package I might report it against. This was a rather large upgrade of
a testing system which had not been upgraded in quite awhile. Any
number of things might have changed.

The main difference is that logind (part of the systemd package) now
takes precedent over the previous suspend logic (pm-utils IIRC). This is
because pm-utils stops processing certain events if it detects that
logind is running.

In my eyes, the proper fix for this would be:

 - have the postinst script for systemd detect whether on dist upgrade
pm-utils was installed and its configuration was modified by the user

 - if not, proceed with the current state (keep using defaults)

 - if the user changed configuration, it should just tell logind not to
   handle events at all

 - and it should tell pm-utils that it should continue processing all
   events
         - (not sure if that's possible just with configuration)

 - and it probably should show a debconf message that while the current
   configuration has been kept, the new way of doing things[tm] is
   different and offer people some guidance in this regard

Alternatively, systemd's postinst script could also try to parse
pm-util's configuration and adapt it, but I suspect that that's going to be rather tricky, so I doubt that that's going to be a viable way forward.

So if you want to report this, this should be

 - a bug in Debian's systemd package for the postinst script

- potentially another bug in Debian's pm-utils package (that blocks the systemd bug) that provides a means for the systemd postinst script to reenable pm-utils (if that is not already available anyway, I haven't
   checked)

(and
suspending a laptop when the lid is closed and it is on AC power does
not strike me as particularly sensible)

IIRC logind will NOT suspend if the system is on AC power AND an
external monitor is connected. Basically: as long as the laptop can show something on a screen that's visible to the user, the system will not be
suspended.

Obviously, for your use case, this default doesn't work. But that's why
software can be configured. Your problem doesn't stem from this default
(which I think is rather sensible), but rather from the fact that your
locally modified configuration was not honored on update.

Christian


Reply to: