mirror of
https://github.com/systemd/systemd.git
synced 2025-03-28 02:50:16 +03:00
shutdown: remove explicit sync() invocations
The kernel implicitly does sync() anyway, hence there is no need to do that in userspace explicitly. This makes the "-n" switch to halt(8) a noop.
This commit is contained in:
parent
3eabccc46c
commit
57371e5829
@ -135,15 +135,6 @@
|
||||
shutdown entry.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--no-sync</option></term>
|
||||
|
||||
<listitem><para>Don't sync hard disks/storage media before
|
||||
halt, power-off,
|
||||
reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-wall</option></term>
|
||||
|
||||
|
@ -279,8 +279,6 @@ int main(int argc, char *argv[]) {
|
||||
}
|
||||
}
|
||||
|
||||
sync();
|
||||
|
||||
if (cmd == LINUX_REBOOT_CMD_KEXEC) {
|
||||
/* We cheat and exec kexec to avoid doing all its work */
|
||||
pid_t pid = fork();
|
||||
|
@ -74,7 +74,6 @@ static bool arg_no_block = false;
|
||||
static bool arg_no_legend = false;
|
||||
static bool arg_no_pager = false;
|
||||
static bool arg_no_wtmp = false;
|
||||
static bool arg_no_sync = false;
|
||||
static bool arg_no_wall = false;
|
||||
static bool arg_no_reload = false;
|
||||
static bool arg_dry = false;
|
||||
@ -3949,7 +3948,6 @@ static int halt_help(void) {
|
||||
" -f --force Force immediate halt/power-off/reboot\n"
|
||||
" -w --wtmp-only Don't halt/power-off/reboot, just write wtmp record\n"
|
||||
" -d --no-wtmp Don't write wtmp record\n"
|
||||
" -n --no-sync Don't sync before halt/power-off/reboot\n"
|
||||
" --no-wall Don't send wall message before halt/power-off/reboot\n",
|
||||
program_invocation_short_name,
|
||||
arg_action == ACTION_REBOOT ? "Reboot" :
|
||||
@ -4271,7 +4269,6 @@ static int halt_parse_argv(int argc, char *argv[]) {
|
||||
{ "force", no_argument, NULL, 'f' },
|
||||
{ "wtmp-only", no_argument, NULL, 'w' },
|
||||
{ "no-wtmp", no_argument, NULL, 'd' },
|
||||
{ "no-sync", no_argument, NULL, 'n' },
|
||||
{ "no-wall", no_argument, NULL, ARG_NO_WALL },
|
||||
{ NULL, 0, NULL, 0 }
|
||||
};
|
||||
@ -4317,16 +4314,13 @@ static int halt_parse_argv(int argc, char *argv[]) {
|
||||
arg_no_wtmp = true;
|
||||
break;
|
||||
|
||||
case 'n':
|
||||
arg_no_sync = true;
|
||||
break;
|
||||
|
||||
case ARG_NO_WALL:
|
||||
arg_no_wall = true;
|
||||
break;
|
||||
|
||||
case 'i':
|
||||
case 'h':
|
||||
case 'n':
|
||||
/* Compatibility nops */
|
||||
break;
|
||||
|
||||
@ -5168,9 +5162,6 @@ static int halt_main(DBusConnection *bus) {
|
||||
}
|
||||
}
|
||||
|
||||
if (!arg_no_sync)
|
||||
sync();
|
||||
|
||||
if (arg_dry)
|
||||
return 0;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user