mirror of
https://github.com/systemd/systemd.git
synced 2024-12-25 01:34:28 +03:00
logind: use "sleep" as generic term for "suspend", "hibernate", and later on "hybrid suspend"
This commit is contained in:
parent
dd5f0a96f7
commit
4943c1c94b
2
TODO
2
TODO
@ -41,8 +41,6 @@ Features:
|
||||
SessionIdleMode=(explicit|ignore|login)
|
||||
ForceShutdown=(yes|no)
|
||||
|
||||
* logind: use "sleep" as generic term for "suspend", "hibernate", ...
|
||||
|
||||
* services which create their own subcgroups break cgroup-empty notification (needs to be fixed in the kernel)
|
||||
|
||||
* don't delete /tmp/systemd-namespace-* before a process is gone down
|
||||
|
@ -151,11 +151,12 @@
|
||||
<term><varname>InhibitDelayMaxSec=</varname></term>
|
||||
|
||||
<listitem><para>Specifies the maximum
|
||||
time a suspend or reboot is delayed
|
||||
due to an inhibitor lock of type
|
||||
<literal>delay</literal> being taken
|
||||
before it is ignored and the operation
|
||||
executed anyway. Defaults to
|
||||
time a system shutdown or sleep
|
||||
request is delayed due to an inhibitor
|
||||
lock of type <literal>delay</literal>
|
||||
being taken before it is ignored and
|
||||
the operation executed
|
||||
anyway. Defaults to
|
||||
5s.</para></listitem>
|
||||
|
||||
</varlistentry>
|
||||
|
@ -60,14 +60,14 @@
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-inhibit</command> may be used
|
||||
to execute a program with a shutdown, suspend or idle
|
||||
to execute a program with a shutdown, sleep or idle
|
||||
inhibitor lock taken. The lock will be acquired before
|
||||
the specified command line is executed and released
|
||||
afterwards.</para>
|
||||
|
||||
<para>Inhibitor locks may be used to block or delay
|
||||
suspend and shutdown requests from the user, as well
|
||||
as automatic idle handling of the OS. This may be used
|
||||
system sleep and shutdown requests from the user, as well
|
||||
as automatic idle handling of the OS. This is useful
|
||||
to avoid system suspends while an optical disc is
|
||||
being recorded, or similar operations that should not
|
||||
be interrupted.</para>
|
||||
@ -101,7 +101,7 @@
|
||||
separated list of one or more
|
||||
operations to inhibit:
|
||||
<literal>shutdown</literal>,
|
||||
<literal>suspend</literal>,
|
||||
<literal>sleep</literal>,
|
||||
<literal>idle</literal>, for
|
||||
inhibiting reboot/power-off/halt/kexec,
|
||||
suspending/hibernating, resp. the
|
||||
|
@ -31,7 +31,7 @@
|
||||
#include "build.h"
|
||||
#include "strv.h"
|
||||
|
||||
static const char* arg_what = "idle:suspend:shutdown";
|
||||
static const char* arg_what = "idle:sleep:shutdown";
|
||||
static const char* arg_who = NULL;
|
||||
static const char* arg_why = "Unknown reason";
|
||||
static const char* arg_mode = "block";
|
||||
@ -182,11 +182,11 @@ finish:
|
||||
static int help(void) {
|
||||
|
||||
printf("%s [OPTIONS...] {COMMAND} ...\n\n"
|
||||
"Execute a process while inhibiting shutdown/suspend/idle.\n\n"
|
||||
"Execute a process while inhibiting shutdown/sleep/idle.\n\n"
|
||||
" -h --help Show this help\n"
|
||||
" --version Show package version\n"
|
||||
" --what=WHAT Operations to inhibit, colon separated list of idle,\n"
|
||||
" suspend, shutdown\n"
|
||||
" sleep, shutdown\n"
|
||||
" --who=STRING A descriptive string who is inhibiting\n"
|
||||
" --why=STRING A descriptive string why is being inhibited\n"
|
||||
" --mode=MODE One of block or delay\n"
|
||||
|
@ -376,12 +376,12 @@ const char *inhibit_what_to_string(InhibitWhat w) {
|
||||
static const char* const table[_INHIBIT_WHAT_MAX] = {
|
||||
[0] = "",
|
||||
[INHIBIT_SHUTDOWN] = "shutdown",
|
||||
[INHIBIT_SUSPEND] = "suspend",
|
||||
[INHIBIT_SLEEP] = "sleep",
|
||||
[INHIBIT_IDLE] = "idle",
|
||||
[INHIBIT_SHUTDOWN|INHIBIT_SUSPEND] = "shutdown:suspend",
|
||||
[INHIBIT_SHUTDOWN|INHIBIT_SLEEP] = "shutdown:sleep",
|
||||
[INHIBIT_SHUTDOWN|INHIBIT_IDLE] = "shutdown:idle",
|
||||
[INHIBIT_SHUTDOWN|INHIBIT_SUSPEND|INHIBIT_IDLE] = "shutdown:suspend:idle",
|
||||
[INHIBIT_SUSPEND|INHIBIT_IDLE] = "suspend:idle"
|
||||
[INHIBIT_SHUTDOWN|INHIBIT_SLEEP|INHIBIT_IDLE] = "shutdown:sleep:idle",
|
||||
[INHIBIT_SLEEP|INHIBIT_IDLE] = "sleep:idle"
|
||||
};
|
||||
|
||||
if (w < 0 || w >= _INHIBIT_WHAT_MAX)
|
||||
@ -398,8 +398,8 @@ InhibitWhat inhibit_what_from_string(const char *s) {
|
||||
FOREACH_WORD_SEPARATOR(w, l, s, ":", state) {
|
||||
if (l == 8 && strncmp(w, "shutdown", l) == 0)
|
||||
what |= INHIBIT_SHUTDOWN;
|
||||
else if (l == 7 && strncmp(w, "suspend", l) == 0)
|
||||
what |= INHIBIT_SUSPEND;
|
||||
else if (l == 5 && strncmp(w, "sleep", l) == 0)
|
||||
what |= INHIBIT_SLEEP;
|
||||
else if (l == 4 && strncmp(w, "idle", l) == 0)
|
||||
what |= INHIBIT_IDLE;
|
||||
else
|
||||
|
@ -31,7 +31,7 @@ typedef struct Inhibitor Inhibitor;
|
||||
|
||||
typedef enum InhibitWhat {
|
||||
INHIBIT_SHUTDOWN = 1,
|
||||
INHIBIT_SUSPEND = 2,
|
||||
INHIBIT_SLEEP = 2,
|
||||
INHIBIT_IDLE = 4,
|
||||
_INHIBIT_WHAT_MAX = 8,
|
||||
_INHIBIT_WHAT_INVALID = -1
|
||||
|
@ -119,7 +119,7 @@ int main(int argc, char*argv[]) {
|
||||
|
||||
print_inhibitors(bus);
|
||||
|
||||
fd1 = inhibit(bus, "suspend");
|
||||
fd1 = inhibit(bus, "sleep");
|
||||
assert(fd1 >= 0);
|
||||
print_inhibitors(bus);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user