Just out of curiosity. What happens if you enable both?

Regards,
Ronald.


On Tue, 14 Nov 2017 01:29:14 +0100, Warner Losh <i...@freebsd.org> wrote:

Author: imp
Date: Tue Nov 14 00:29:14 2017
New Revision: 325785
URL: https://svnweb.freebsd.org/changeset/base/325785

Log:
  Add two new tunables / sysctls to controll reboot after panic:
 kern.poweroff_on_panic which, when enabled, instructs a system to
  power off on a panic instead of a reboot.
 kern.powercyle_on_panic which, when enabled, instructs a system to
  power cycle, if possible, on a panic instead of a reboot.
 Sponsored by: Netflix
  Differential Revision: https://reviews.freebsd.org/D13042

Modified:
  head/sys/kern/kern_shutdown.c
  head/tools/tools/sysdoc/tunables.mdoc

Modified: head/sys/kern/kern_shutdown.c
==============================================================================
--- head/sys/kern/kern_shutdown.c       Mon Nov 13 23:33:07 2017        
(r325784)
+++ head/sys/kern/kern_shutdown.c       Tue Nov 14 00:29:14 2017        
(r325785)
@@ -134,6 +134,14 @@ static int sync_on_panic = 0;
 SYSCTL_INT(_kern, OID_AUTO, sync_on_panic, CTLFLAG_RWTUN,
        &sync_on_panic, 0, "Do a sync before rebooting from a panic");
+static bool poweroff_on_panic = 0;
+SYSCTL_BOOL(_kern, OID_AUTO, poweroff_on_panic, CTLFLAG_RWTUN,
+ &poweroff_on_panic, 0, "Do a power off instead of a reboot on a panic");
+
+static bool powercycle_on_panic = 0;
+SYSCTL_BOOL(_kern, OID_AUTO, powercycle_on_panic, CTLFLAG_RWTUN,
+ &powercycle_on_panic, 0, "Do a power cycle instead of a reboot on a panic");
+
 static SYSCTL_NODE(_kern, OID_AUTO, shutdown, CTLFLAG_RW, 0,
     "Shutdown environment");
@@ -797,6 +805,10 @@ vpanic(const char *fmt, va_list ap)
        /* thread_unlock(td); */
        if (!sync_on_panic)
                bootopt |= RB_NOSYNC;
+       if (poweroff_on_panic)
+               bootopt |= RB_POWEROFF;
+       if (powercycle_on_panic)
+               bootopt |= RB_POWERCYCLE;
        kern_reboot(bootopt);
 }

Modified: head/tools/tools/sysdoc/tunables.mdoc
==============================================================================
--- head/tools/tools/sysdoc/tunables.mdoc Mon Nov 13 23:33:07 2017 (r325784) +++ head/tools/tools/sysdoc/tunables.mdoc Tue Nov 14 00:29:14 2017 (r325785)
@@ -1035,6 +1035,20 @@ is attempting to comply with.
 This is a read-only variable.
---
+kern.powercycle_on_panic
+bool
+
+In the event of a panic, this variable controls whether or not the
+system should try to power cycle instead of rebooting.
+
+---
+kern.poweroff_on_panic
+bool
+
+In the event of a panic, this variable controls whether or not the
+system should try to power off instead of rebooting.
+
+---
 kern.proc.all
---
_______________________________________________
svn-src-...@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to