Fix manual break to debugger
authorAlex Hornung <ahornung@gmail.com>
Sat, 11 Sep 2010 13:21:23 +0000 (14:21 +0100)
committerAlex Hornung <ahornung@gmail.com>
Sat, 11 Sep 2010 13:21:23 +0000 (14:21 +0100)
* When manually breaking to debugger, we can't hold any tokens as they
  get in the way of kbdmux' lockmgr in an interrupt context.

sys/dev/misc/syscons/syscons.c

index 7cf4aba..f55ab78 100644 (file)
@@ -3457,11 +3457,13 @@ next_code:
 
            case DBG:
 #ifndef SC_DISABLE_DDBKEY
+               lwkt_reltoken(&tty_token);
 #ifdef DDB
                Debugger("manual escape to debugger");
 #else
                kprintf("No debugger in kernel\n");
 #endif
+               lwkt_gettoken(&tty_token);
 #else /* SC_DISABLE_DDBKEY */
                /* do nothing */
 #endif /* SC_DISABLE_DDBKEY */