NAME
cpu_reboot —
halt or reboot the
system
SYNOPSIS
#include <sys/reboot.h>
void
cpu_reboot(
int
howto,
char
*bootstr);
DESCRIPTION
The
cpu_reboot() function handles final system shutdown, and
either halts or reboots the system. The exact action to be taken is determined
by the flags passed in
howto and by whether or not the
system has finished autoconfiguration.
If the system has finished autoconfiguration,
cpu_reboot()
does the following:
- Sets the boothowto system variable
(see boothowto(9)) from
the howto argument.
- If this is the first invocation of
cpu_reboot() and the
RB_NOSYNC
flag is not set in howto, syncs and unmounts the
system disks by calling
vfs_shutdown(9) and
sets the time of day clock by calling
resettodr(9).
- Disables interrupts.
- If rebooting after a crash (i.e., if
RB_DUMP
is set in howto, but
RB_HALT
is not), saves a system crash dump.
- Runs any shutdown hooks by calling
pmf_system_shutdown(9).
- Prints a message indicating that the system is about to be
halted or rebooted.
- If
RB_HALT
is set in
howto, halts the system. Otherwise, reboots the
system.
If the system has not finished autoconfiguration,
cpu_reboot()
runs any shutdown hooks by calling
pmf_system_shutdown(9),
prints a message, and halts the system.
If
RB_STRING
is set in
howto, then the
parameter
bootstr is passed to the system boot loader on
some ports.
SEE ALSO
boothowto(9),
dumpsys(9),
pmf_system_shutdown(9),
resettodr(9),
vfs_shutdown(9)