Merge pull request #8606 from dell/rename-suspend-to-hibernate
Rename suspend-to-hibernate to suspend-then-hibernate
This commit is contained in:
+1
-1
@@ -37,7 +37,7 @@
|
||||
#define SPECIAL_SUSPEND_TARGET "suspend.target"
|
||||
#define SPECIAL_HIBERNATE_TARGET "hibernate.target"
|
||||
#define SPECIAL_HYBRID_SLEEP_TARGET "hybrid-sleep.target"
|
||||
#define SPECIAL_SUSPEND_TO_HIBERNATE_TARGET "suspend-to-hibernate.target"
|
||||
#define SPECIAL_SUSPEND_THEN_HIBERNATE_TARGET "suspend-then-hibernate.target"
|
||||
|
||||
/* Special boot targets */
|
||||
#define SPECIAL_RESCUE_TARGET "rescue.target"
|
||||
|
||||
@@ -48,7 +48,7 @@ int manager_handle_action(
|
||||
[HANDLE_SUSPEND] = "Suspending...",
|
||||
[HANDLE_HIBERNATE] = "Hibernating...",
|
||||
[HANDLE_HYBRID_SLEEP] = "Hibernating and suspending...",
|
||||
[HANDLE_SUSPEND_TO_HIBERNATE] = "Suspending to hibernate...",
|
||||
[HANDLE_SUSPEND_THEN_HIBERNATE] = "Suspending, then hibernating...",
|
||||
};
|
||||
|
||||
static const char * const target_table[_HANDLE_ACTION_MAX] = {
|
||||
@@ -59,7 +59,7 @@ int manager_handle_action(
|
||||
[HANDLE_SUSPEND] = SPECIAL_SUSPEND_TARGET,
|
||||
[HANDLE_HIBERNATE] = SPECIAL_HIBERNATE_TARGET,
|
||||
[HANDLE_HYBRID_SLEEP] = SPECIAL_HYBRID_SLEEP_TARGET,
|
||||
[HANDLE_SUSPEND_TO_HIBERNATE] = SPECIAL_SUSPEND_TO_HIBERNATE_TARGET,
|
||||
[HANDLE_SUSPEND_THEN_HIBERNATE] = SPECIAL_SUSPEND_THEN_HIBERNATE_TARGET,
|
||||
};
|
||||
|
||||
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
@@ -112,8 +112,8 @@ int manager_handle_action(
|
||||
supported = can_sleep("hibernate") > 0;
|
||||
else if (handle == HANDLE_HYBRID_SLEEP)
|
||||
supported = can_sleep("hybrid-sleep") > 0;
|
||||
else if (handle == HANDLE_SUSPEND_TO_HIBERNATE)
|
||||
supported = can_sleep("suspend-to-hibernate") > 0;
|
||||
else if (handle == HANDLE_SUSPEND_THEN_HIBERNATE)
|
||||
supported = can_sleep("suspend-then-hibernate") > 0;
|
||||
else if (handle == HANDLE_KEXEC)
|
||||
supported = access(KEXEC, X_OK) >= 0;
|
||||
else
|
||||
@@ -131,7 +131,7 @@ int manager_handle_action(
|
||||
|
||||
inhibit_operation = IN_SET(handle, HANDLE_SUSPEND, HANDLE_HIBERNATE,
|
||||
HANDLE_HYBRID_SLEEP,
|
||||
HANDLE_SUSPEND_TO_HIBERNATE) ? INHIBIT_SLEEP : INHIBIT_SHUTDOWN;
|
||||
HANDLE_SUSPEND_THEN_HIBERNATE) ? INHIBIT_SLEEP : INHIBIT_SHUTDOWN;
|
||||
|
||||
/* If the actual operation is inhibited, warn and fail */
|
||||
if (!ignore_inhibited &&
|
||||
@@ -178,7 +178,7 @@ static const char* const handle_action_table[_HANDLE_ACTION_MAX] = {
|
||||
[HANDLE_SUSPEND] = "suspend",
|
||||
[HANDLE_HIBERNATE] = "hibernate",
|
||||
[HANDLE_HYBRID_SLEEP] = "hybrid-sleep",
|
||||
[HANDLE_SUSPEND_TO_HIBERNATE] = "suspend-to-hibernate",
|
||||
[HANDLE_SUSPEND_THEN_HIBERNATE] = "suspend-then-hibernate",
|
||||
[HANDLE_LOCK] = "lock"
|
||||
};
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ typedef enum HandleAction {
|
||||
HANDLE_SUSPEND,
|
||||
HANDLE_HIBERNATE,
|
||||
HANDLE_HYBRID_SLEEP,
|
||||
HANDLE_SUSPEND_TO_HIBERNATE,
|
||||
HANDLE_SUSPEND_THEN_HIBERNATE,
|
||||
HANDLE_LOCK,
|
||||
_HANDLE_ACTION_MAX,
|
||||
_HANDLE_ACTION_INVALID = -1
|
||||
|
||||
@@ -1927,12 +1927,12 @@ static int method_hybrid_sleep(sd_bus_message *message, void *userdata, sd_bus_e
|
||||
error);
|
||||
}
|
||||
|
||||
static int method_suspend_to_hibernate(sd_bus_message *message, void *userdata, sd_bus_error *error) {
|
||||
static int method_suspend_then_hibernate(sd_bus_message *message, void *userdata, sd_bus_error *error) {
|
||||
Manager *m = userdata;
|
||||
|
||||
return method_do_shutdown_or_sleep(
|
||||
m, message,
|
||||
SPECIAL_SUSPEND_TO_HIBERNATE_TARGET,
|
||||
SPECIAL_SUSPEND_THEN_HIBERNATE_TARGET,
|
||||
INHIBIT_SLEEP,
|
||||
"org.freedesktop.login1.hibernate",
|
||||
"org.freedesktop.login1.hibernate-multiple-sessions",
|
||||
@@ -2394,7 +2394,7 @@ static int method_can_hybrid_sleep(sd_bus_message *message, void *userdata, sd_b
|
||||
error);
|
||||
}
|
||||
|
||||
static int method_can_suspend_to_hibernate(sd_bus_message *message, void *userdata, sd_bus_error *error) {
|
||||
static int method_can_suspend_then_hibernate(sd_bus_message *message, void *userdata, sd_bus_error *error) {
|
||||
Manager *m = userdata;
|
||||
|
||||
return method_can_shutdown_or_sleep(
|
||||
@@ -2403,7 +2403,7 @@ static int method_can_suspend_to_hibernate(sd_bus_message *message, void *userda
|
||||
"org.freedesktop.login1.hibernate",
|
||||
"org.freedesktop.login1.hibernate-multiple-sessions",
|
||||
"org.freedesktop.login1.hibernate-ignore-inhibit",
|
||||
"suspend-to-hibernate",
|
||||
"suspend-then-hibernate",
|
||||
error);
|
||||
}
|
||||
|
||||
@@ -2727,14 +2727,14 @@ const sd_bus_vtable manager_vtable[] = {
|
||||
SD_BUS_METHOD("Suspend", "b", NULL, method_suspend, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("Hibernate", "b", NULL, method_hibernate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("HybridSleep", "b", NULL, method_hybrid_sleep, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("SuspendToHibernate", "b", NULL, method_suspend_to_hibernate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("SuspendThenHibernate", "b", NULL, method_suspend_then_hibernate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanPowerOff", NULL, "s", method_can_poweroff, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanReboot", NULL, "s", method_can_reboot, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanHalt", NULL, "s", method_can_halt, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanSuspend", NULL, "s", method_can_suspend, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanHibernate", NULL, "s", method_can_hibernate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanHybridSleep", NULL, "s", method_can_hybrid_sleep, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanSuspendToHibernate", NULL, "s", method_can_suspend_to_hibernate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CanSuspendThenHibernate", NULL, "s", method_can_suspend_then_hibernate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("ScheduleShutdown", "st", NULL, method_schedule_shutdown, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("CancelScheduledShutdown", NULL, "b", method_cancel_scheduled_shutdown, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD("Inhibit", "ssss", "h", method_inhibit, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
|
||||
@@ -152,7 +152,7 @@
|
||||
|
||||
<allow send_destination="org.freedesktop.login1"
|
||||
send_interface="org.freedesktop.login1.Manager"
|
||||
send_member="SuspendToHibernate"/>
|
||||
send_member="SuspendThenHibernate"/>
|
||||
|
||||
<allow send_destination="org.freedesktop.login1"
|
||||
send_interface="org.freedesktop.login1.Manager"
|
||||
@@ -180,7 +180,7 @@
|
||||
|
||||
<allow send_destination="org.freedesktop.login1"
|
||||
send_interface="org.freedesktop.login1.Manager"
|
||||
send_member="CanSuspendToHibernate"/>
|
||||
send_member="CanSuspendThenHibernate"/>
|
||||
|
||||
<allow send_destination="org.freedesktop.login1"
|
||||
send_interface="org.freedesktop.login1.Manager"
|
||||
|
||||
@@ -96,13 +96,13 @@ int parse_sleep_config(const char *verb, char ***_modes, char ***_states, usec_t
|
||||
else
|
||||
states = strv_new("disk", NULL);
|
||||
|
||||
} else if (streq(verb, "suspend-to-hibernate"))
|
||||
} else if (streq(verb, "suspend-then-hibernate"))
|
||||
modes = states = NULL;
|
||||
else
|
||||
assert_not_reached("what verb");
|
||||
|
||||
if ((!modes && STR_IN_SET(verb, "hibernate", "hybrid-sleep")) ||
|
||||
(!states && !streq(verb, "suspend-to-hibernate"))) {
|
||||
(!states && !streq(verb, "suspend-then-hibernate"))) {
|
||||
strv_free(modes);
|
||||
strv_free(states);
|
||||
return log_oom();
|
||||
@@ -298,9 +298,9 @@ int can_sleep(const char *verb) {
|
||||
_cleanup_strv_free_ char **modes = NULL, **states = NULL;
|
||||
int r;
|
||||
|
||||
assert(STR_IN_SET(verb, "suspend", "hibernate", "hybrid-sleep", "suspend-to-hibernate"));
|
||||
assert(STR_IN_SET(verb, "suspend", "hibernate", "hybrid-sleep", "suspend-then-hibernate"));
|
||||
|
||||
if (streq(verb, "suspend-to-hibernate"))
|
||||
if (streq(verb, "suspend-then-hibernate"))
|
||||
return can_s2h();
|
||||
|
||||
r = parse_sleep_config(verb, &modes, &states, NULL);
|
||||
|
||||
+3
-3
@@ -224,7 +224,7 @@ static void help(void) {
|
||||
" suspend Suspend the system\n"
|
||||
" hibernate Hibernate the system\n"
|
||||
" hybrid-sleep Both hibernate and suspend the system\n"
|
||||
" suspend-to-hibernate Initially suspend and then hibernate\n"
|
||||
" suspend-then-hibernate Initially suspend and then hibernate\n"
|
||||
" the system after a fixed period of time\n"
|
||||
, program_invocation_short_name);
|
||||
}
|
||||
@@ -272,7 +272,7 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
if (!streq(arg_verb, "suspend") &&
|
||||
!streq(arg_verb, "hibernate") &&
|
||||
!streq(arg_verb, "hybrid-sleep") &&
|
||||
!streq(arg_verb, "suspend-to-hibernate")) {
|
||||
!streq(arg_verb, "suspend-then-hibernate")) {
|
||||
log_error("Unknown command '%s'.", arg_verb);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -297,7 +297,7 @@ int main(int argc, char *argv[]) {
|
||||
if (r < 0)
|
||||
goto finish;
|
||||
|
||||
if (streq(arg_verb, "suspend-to-hibernate"))
|
||||
if (streq(arg_verb, "suspend-then-hibernate"))
|
||||
r = execute_s2h(delay);
|
||||
else
|
||||
r = execute(modes, states);
|
||||
|
||||
+23
-23
@@ -161,7 +161,7 @@ static enum action {
|
||||
ACTION_SUSPEND,
|
||||
ACTION_HIBERNATE,
|
||||
ACTION_HYBRID_SLEEP,
|
||||
ACTION_SUSPEND_TO_HIBERNATE,
|
||||
ACTION_SUSPEND_THEN_HIBERNATE,
|
||||
ACTION_RUNLEVEL2,
|
||||
ACTION_RUNLEVEL3,
|
||||
ACTION_RUNLEVEL4,
|
||||
@@ -3019,22 +3019,22 @@ static const struct {
|
||||
const char *verb;
|
||||
const char *mode;
|
||||
} action_table[_ACTION_MAX] = {
|
||||
[ACTION_HALT] = { SPECIAL_HALT_TARGET, "halt", "replace-irreversibly" },
|
||||
[ACTION_POWEROFF] = { SPECIAL_POWEROFF_TARGET, "poweroff", "replace-irreversibly" },
|
||||
[ACTION_REBOOT] = { SPECIAL_REBOOT_TARGET, "reboot", "replace-irreversibly" },
|
||||
[ACTION_KEXEC] = { SPECIAL_KEXEC_TARGET, "kexec", "replace-irreversibly" },
|
||||
[ACTION_RUNLEVEL2] = { SPECIAL_MULTI_USER_TARGET, NULL, "isolate" },
|
||||
[ACTION_RUNLEVEL3] = { SPECIAL_MULTI_USER_TARGET, NULL, "isolate" },
|
||||
[ACTION_RUNLEVEL4] = { SPECIAL_MULTI_USER_TARGET, NULL, "isolate" },
|
||||
[ACTION_RUNLEVEL5] = { SPECIAL_GRAPHICAL_TARGET, NULL, "isolate" },
|
||||
[ACTION_RESCUE] = { SPECIAL_RESCUE_TARGET, "rescue", "isolate" },
|
||||
[ACTION_EMERGENCY] = { SPECIAL_EMERGENCY_TARGET, "emergency", "isolate" },
|
||||
[ACTION_DEFAULT] = { SPECIAL_DEFAULT_TARGET, "default", "isolate" },
|
||||
[ACTION_EXIT] = { SPECIAL_EXIT_TARGET, "exit", "replace-irreversibly" },
|
||||
[ACTION_SUSPEND] = { SPECIAL_SUSPEND_TARGET, "suspend", "replace-irreversibly" },
|
||||
[ACTION_HIBERNATE] = { SPECIAL_HIBERNATE_TARGET, "hibernate", "replace-irreversibly" },
|
||||
[ACTION_HYBRID_SLEEP] = { SPECIAL_HYBRID_SLEEP_TARGET, "hybrid-sleep", "replace-irreversibly" },
|
||||
[ACTION_SUSPEND_TO_HIBERNATE] = { SPECIAL_SUSPEND_TO_HIBERNATE_TARGET, "suspend-to-hibernate", "replace-irreversibly" },
|
||||
[ACTION_HALT] = { SPECIAL_HALT_TARGET, "halt", "replace-irreversibly" },
|
||||
[ACTION_POWEROFF] = { SPECIAL_POWEROFF_TARGET, "poweroff", "replace-irreversibly" },
|
||||
[ACTION_REBOOT] = { SPECIAL_REBOOT_TARGET, "reboot", "replace-irreversibly" },
|
||||
[ACTION_KEXEC] = { SPECIAL_KEXEC_TARGET, "kexec", "replace-irreversibly" },
|
||||
[ACTION_RUNLEVEL2] = { SPECIAL_MULTI_USER_TARGET, NULL, "isolate" },
|
||||
[ACTION_RUNLEVEL3] = { SPECIAL_MULTI_USER_TARGET, NULL, "isolate" },
|
||||
[ACTION_RUNLEVEL4] = { SPECIAL_MULTI_USER_TARGET, NULL, "isolate" },
|
||||
[ACTION_RUNLEVEL5] = { SPECIAL_GRAPHICAL_TARGET, NULL, "isolate" },
|
||||
[ACTION_RESCUE] = { SPECIAL_RESCUE_TARGET, "rescue", "isolate" },
|
||||
[ACTION_EMERGENCY] = { SPECIAL_EMERGENCY_TARGET, "emergency", "isolate" },
|
||||
[ACTION_DEFAULT] = { SPECIAL_DEFAULT_TARGET, "default", "isolate" },
|
||||
[ACTION_EXIT] = { SPECIAL_EXIT_TARGET, "exit", "replace-irreversibly" },
|
||||
[ACTION_SUSPEND] = { SPECIAL_SUSPEND_TARGET, "suspend", "replace-irreversibly" },
|
||||
[ACTION_HIBERNATE] = { SPECIAL_HIBERNATE_TARGET, "hibernate", "replace-irreversibly" },
|
||||
[ACTION_HYBRID_SLEEP] = { SPECIAL_HYBRID_SLEEP_TARGET, "hybrid-sleep", "replace-irreversibly" },
|
||||
[ACTION_SUSPEND_THEN_HIBERNATE] = { SPECIAL_SUSPEND_THEN_HIBERNATE_TARGET, "suspend-then-hibernate", "replace-irreversibly" },
|
||||
};
|
||||
|
||||
static enum action verb_to_action(const char *verb) {
|
||||
@@ -3269,8 +3269,8 @@ static int logind_reboot(enum action a) {
|
||||
description = "put system into hybrid sleep";
|
||||
break;
|
||||
|
||||
case ACTION_SUSPEND_TO_HIBERNATE:
|
||||
method = "SuspendToHibernate";
|
||||
case ACTION_SUSPEND_THEN_HIBERNATE:
|
||||
method = "SuspendThenHibernate";
|
||||
description = "put system into suspend followed by hibernate";
|
||||
break;
|
||||
|
||||
@@ -3643,7 +3643,7 @@ static int start_special(int argc, char *argv[], void *userdata) {
|
||||
ACTION_SUSPEND,
|
||||
ACTION_HIBERNATE,
|
||||
ACTION_HYBRID_SLEEP,
|
||||
ACTION_SUSPEND_TO_HIBERNATE)) {
|
||||
ACTION_SUSPEND_THEN_HIBERNATE)) {
|
||||
|
||||
r = logind_reboot(a);
|
||||
if (r >= 0)
|
||||
@@ -7185,7 +7185,7 @@ static void systemctl_help(void) {
|
||||
" suspend Suspend the system\n"
|
||||
" hibernate Hibernate the system\n"
|
||||
" hybrid-sleep Hibernate and suspend the system\n"
|
||||
" suspend-to-hibernate Suspend the system, wake after a period of\n"
|
||||
" suspend-then-hibernate Suspend the system, wake after a period of\n"
|
||||
" time and put it into hibernate\n",
|
||||
program_invocation_short_name);
|
||||
}
|
||||
@@ -8283,7 +8283,7 @@ static int systemctl_main(int argc, char *argv[]) {
|
||||
{ "suspend", VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
{ "hibernate", VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
{ "hybrid-sleep", VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
{ "suspend-to-hibernate", VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
{ "suspend-then-hibernate",VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
{ "default", VERB_ANY, 1, VERB_ONLINE_ONLY, start_special },
|
||||
{ "rescue", VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
{ "emergency", VERB_ANY, 1, VERB_ONLINE_ONLY, start_system_special },
|
||||
@@ -8615,7 +8615,7 @@ int main(int argc, char*argv[]) {
|
||||
case ACTION_SUSPEND:
|
||||
case ACTION_HIBERNATE:
|
||||
case ACTION_HYBRID_SLEEP:
|
||||
case ACTION_SUSPEND_TO_HIBERNATE:
|
||||
case ACTION_SUSPEND_THEN_HIBERNATE:
|
||||
case ACTION_EMERGENCY:
|
||||
case ACTION_DEFAULT:
|
||||
/* systemctl verbs with no equivalent in the legacy commands.
|
||||
|
||||
@@ -48,7 +48,7 @@ static void test_sleep(void) {
|
||||
log_info("Suspend configured and possible: %s", yes_no(can_sleep("suspend") > 0));
|
||||
log_info("Hibernation configured and possible: %s", yes_no(can_sleep("hibernate") > 0));
|
||||
log_info("Hybrid-sleep configured and possible: %s", yes_no(can_sleep("hybrid-sleep") > 0));
|
||||
log_info("Suspend-to-Hibernate configured and possible: %s", yes_no(can_sleep("suspend-to-hibernate") > 0));
|
||||
log_info("Suspend-then-Hibernate configured and possible: %s", yes_no(can_sleep("suspend-then-hibernate") > 0));
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
|
||||
Reference in New Issue
Block a user