1.\" $NetBSD: cpu_reboot.9,v 1.13 2002/10/14 13:43:20 wiz Exp $ 2.\" 3.\" Copyright (c) 1994 Christopher G. Demetriou 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. All advertising materials mentioning features or use of this software 15.\" must display the following acknowledgement: 16.\" This product includes software developed for the 17.\" NetBSD Project. See http://www.netbsd.org/ for 18.\" information about NetBSD. 19.\" 4. The name of the author may not be used to endorse or promote products 20.\" derived from this software without specific prior written permission. 21.\" 22.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 23.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 24.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 25.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 26.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 27.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 28.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 29.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 30.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 31.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32.\" 33.\" <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>> 34.\" 35.Dd November 13, 1995 36.Dt CPU_REBOOT 9 37.Os 38.Sh NAME 39.Nm cpu_reboot 40.Nd halt or reboot the system 41.Sh SYNOPSIS 42.Fd #include \*[Lt]sys/reboot.h\*[Gt] 43.Ft void 44.Fn cpu_reboot "int howto" "char *bootstr" 45.Sh DESCRIPTION 46The 47.Fn cpu_reboot 48function handles final system shutdown, and either halts or reboots 49the system. 50The exact action to be taken is determined by the flags passed in 51.Fa howto 52and by whether or not the system has finished autoconfiguration. 53.Pp 54If the system has finished autoconfiguration, 55.Fn cpu_reboot 56does the following: 57.Bl -enum -offset indent 58.It 59Sets the 60.Va boothowto 61system variable from the 62.Fa howto 63argument. 64.It 65If this is the first invocation of 66.Fn cpu_reboot 67and the 68.Dv RB_NOSYNC 69flag is not set in 70.Fa howto , 71syncs and unmounts the system disks by calling 72.Xr vfs_shutdown 9 73and sets the time of day clock by calling 74.Xr resettodr 9 . 75.It 76Disables interrupts. 77.It 78If rebooting after a crash (i.e., if 79.Dv RB_DUMP 80is set in 81.Fa howto , 82but 83.Dv RB_HALT 84is not), saves a system crash dump. 85.It 86Runs any shutdown hooks by calling 87.Xr doshutdownhooks 9 . 88.It 89Prints a message indicating that the system is about to be halted 90or rebooted. 91.It 92If 93.Dv RB_HALT 94is set in 95.Fa howto , 96halts the system. 97Otherwise, reboots the system. 98.El 99.Pp 100If the system has not finished autoconfiguration, 101.Fn cpu_reboot 102runs any shutdown hooks by calling 103.Xr doshutdownhooks 9 , 104prints a message, and halts the system. 105.Pp 106If 107.Dv RB_STRING 108is set in 109.Pa howto , 110then the parameter 111.Fa bootstr 112is passed to the system boot loader on some ports. 113.Sh SEE ALSO 114.Xr doshutdownhooks 9 , 115.Xr dumpsys 9 , 116.Xr resettodr 9 117.\" .Xr vfs_shutdown 9 118