chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
dbus: expose distribution name and features on manager object as properties
[elogind.git]
/
src
/
shutdown.c
diff --git
a/src/shutdown.c
b/src/shutdown.c
index 11c7544fc7c50cd45c42673edd006d25a1f2f4ba..5c082cf4a5c27da59e014d9c72c9ac63f518c9a5 100644
(file)
--- a/
src/shutdown.c
+++ b/
src/shutdown.c
@@
-334,7
+334,9
@@
int main(int argc, char *argv[]) {
}
if (retries >= FINALIZE_ATTEMPTS)
}
if (retries >= FINALIZE_ATTEMPTS)
- log_error("Too many interations, giving up.");
+ log_error("Too many iterations, giving up.");
+
+ execute_directory(SYSTEM_SHUTDOWN_PATH, NULL, NULL);
sync();
sync();
@@
-349,7
+351,7
@@
int main(int argc, char *argv[]) {
log_warning("kexec failed. Falling back to normal reboot.");
} else {
/* Child */
log_warning("kexec failed. Falling back to normal reboot.");
} else {
/* Child */
- const char *args[
5] = { "/sbin/kexec", "-e", "-f", "-x
", NULL };
+ const char *args[
3] = { "/sbin/kexec", "-e
", NULL };
execv(args[0], (char * const *) args);
return EXIT_FAILURE;
}
execv(args[0], (char * const *) args);
return EXIT_FAILURE;
}
@@
-362,7
+364,6
@@
int main(int argc, char *argv[]) {
r = -errno;
error:
r = -errno;
error:
- sync();
log_error("Critical error while doing system shutdown: %s", strerror(-r));
freeze();
log_error("Critical error while doing system shutdown: %s", strerror(-r));
freeze();