Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/ddb call spl0() before cpu_reboot(), so that there's a c...



details:   https://anonhg.NetBSD.org/src/rev/698f5069e573
branches:  trunk
changeset: 433446:698f5069e573
user:      mrg <mrg%NetBSD.org@localhost>
date:      Sat Sep 15 08:48:18 2018 +0000

description:
call spl0() before cpu_reboot(), so that there's a chance that:
- interrupts can work afterwards
- this also means if IO stalls, serial break might work again.

this mimics how reboot(2) ends up calling cpu_reboot().

diffstat:

 sys/ddb/db_command.c |  6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diffs (27 lines):

diff -r 431955d3a5a5 -r 698f5069e573 sys/ddb/db_command.c
--- a/sys/ddb/db_command.c      Sat Sep 15 01:05:06 2018 +0000
+++ b/sys/ddb/db_command.c      Sat Sep 15 08:48:18 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: db_command.c,v 1.157 2018/09/13 01:55:16 mrg Exp $     */
+/*     $NetBSD: db_command.c,v 1.158 2018/09/15 08:48:18 mrg Exp $     */
 
 /*
  * Copyright (c) 1996, 1997, 1998, 1999, 2002, 2009 The NetBSD Foundation, Inc.
@@ -60,7 +60,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: db_command.c,v 1.157 2018/09/13 01:55:16 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: db_command.c,v 1.158 2018/09/15 08:48:18 mrg Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_aio.h"
@@ -1355,6 +1355,8 @@
        /* Avoid all mutex errors */
        lockdebug_dismiss();
        panicstr = "reboot forced via kernel debugger";
+       /* Make it possible to break into the debugger again */
+       spl0();
        cpu_reboot((int)bootflags, NULL);
 #else  /* _KERNEL */
        db_printf("This command can only be used in-kernel.\n");



Home | Main Index | Thread Index | Old Index