Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Sep 2021 14:38:10 GMT
From:      Mitchell Horne <mhorne@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 800e74955d4e - main - boot(9): update to match reality
Message-ID:  <202109281438.18SEcAoI049395@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=800e74955d4e5f90e7258956ba42228350f71049

commit 800e74955d4e5f90e7258956ba42228350f71049
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2021-09-28 14:36:09 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2021-09-28 14:36:09 +0000

    boot(9): update to match reality
    
    This function was renamed to kern_reboot() in 2010, but the man page has
    failed to keep in sync. Bring it up to date on the rename, add the
    shutdown hooks to the synopsis, and document the (obvious) fact that
    kern_reboot() does not return.
    
    Fix an outdated reference to the old name in kern_reboot(), and leave a
    reference to the man page so future readers might find it before any
    large changes.
    
    Reviewed by:    imp, markj
    MFC after:      3 days
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D32085
---
 ObsoleteFiles.inc                        |  3 +++
 share/man/man9/Makefile                  |  2 +-
 share/man/man9/{boot.9 => kern_reboot.9} | 26 ++++++++++++++++++--------
 sys/kern/kern_shutdown.c                 |  5 +++--
 4 files changed, 25 insertions(+), 11 deletions(-)

diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index 87a7f95b67a1..19e0428a5017 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -40,6 +40,9 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20210923: rename boot(9) to kern_reboot(9)
+OLD_FILES+=usr/share/man/man9/boot.9.gz
+
 # 20210921: remove cloudabi
 OLD_FILES+=usr/share/man/man4/cloudabi.4.gz
 
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index 49601b9b7f48..fdaa14bc93e4 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -15,7 +15,6 @@ MAN=	accept_filter.9 \
 	bhnd_erom.9 \
 	bios.9 \
 	bitset.9 \
-	boot.9 \
 	bpf.9 \
 	buf.9 \
 	buf_ring.9 \
@@ -195,6 +194,7 @@ MAN=	accept_filter.9 \
 	ithread.9 \
 	kasan.9 \
 	KASSERT.9 \
+	kern_reboot.9 \
 	kern_testfrwk.9 \
 	kernacc.9 \
 	kernel_mount.9 \
diff --git a/share/man/man9/boot.9 b/share/man/man9/kern_reboot.9
similarity index 85%
rename from share/man/man9/boot.9
rename to share/man/man9/kern_reboot.9
index cbd0099e4e18..587d4ab114db 100644
--- a/share/man/man9/boot.9
+++ b/share/man/man9/kern_reboot.9
@@ -34,21 +34,25 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd February 14, 1997
-.Dt BOOT 9
+.Dd Sept 23, 2021
+.Dt KERN_REBOOT 9
 .Os
 .Sh NAME
-.Nm boot
+.Nm kern_reboot
 .Nd halt or reboot the system
 .Sh SYNOPSIS
 .In sys/types.h
 .In sys/systm.h
 .In sys/reboot.h
 .Ft void
-.Fn boot "int howto"
+.Fn kern_reboot "int howto"
+.In sys/eventhandler.h
+.Fn EVENTHANDLER_REGISTER "shutdown_pre_sync" "shutdown_fn" "private" "priority"
+.Fn EVENTHANDLER_REGISTER "shutdown_post_sync" "shutdown_fn" "private" "priority"
+.Fn EVENTHANDLER_REGISTER "shutdown_final" "shutdown_fn" "private" "priority"
 .Sh DESCRIPTION
 The
-.Fn boot
+.Fn kern_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
@@ -56,12 +60,12 @@ The exact action to be taken is determined by the flags passed in
 and by whether or not the system has finished autoconfiguration.
 .Pp
 If the system has finished autoconfiguration,
-.Fn boot
+.Fn kern_reboot
 does the following:
 .Bl -enum -offset indent
 .It
 If this is the first invocation of
-.Fn boot
+.Fn kern_reboot
 and the
 .Dv RB_NOSYNC
 flag is not set in
@@ -93,8 +97,14 @@ Otherwise, reboots the system.
 .El
 .Pp
 If the system has not finished autoconfiguration,
-.Fn boot
+.Fn kern_reboot
 runs any shutdown hooks previously registered,
 prints a message, and halts the system.
+.Sh RETURN VALUES
+The
+.Fn kern_reboot
+function does not return.
 .Sh SEE ALSO
+.Xr reboot 2
+.Xr EVENTHANDLER 9
 .Xr vfs_unmountall 9
diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c
index 3cc51fd31956..efd7009df8f6 100644
--- a/sys/kern/kern_shutdown.c
+++ b/sys/kern/kern_shutdown.c
@@ -421,7 +421,8 @@ doadump(boolean_t textdump)
 }
 
 /*
- * Shutdown the system cleanly to prepare for reboot, halt, or power off.
+ * kern_reboot(9): Shut down the system cleanly to prepare for reboot, halt, or
+ * power off.
  */
 void
 kern_reboot(int howto)
@@ -450,7 +451,7 @@ kern_reboot(int howto)
 		sched_bind(curthread, CPU_FIRST());
 		thread_unlock(curthread);
 		KASSERT(PCPU_GET(cpuid) == CPU_FIRST(),
-		    ("boot: not running on cpu 0"));
+		    ("%s: not running on cpu 0", __func__));
 	}
 #endif
 	/* We're in the process of rebooting. */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202109281438.18SEcAoI049395>