freebsd-dev/sys/dev/syscons
Bruce Evans abf3a584b6 Change all uses of 'debugger' to kdb_active and remove this variable. This
restores avoidance of doing dangerous things like calling wakeup() and
callouts while in ddb.

Initialization of 'debugger' was broken by removing the cndbctl() console
method that was used mainly in this driver to initialize 'debugger' and
switch to the console screen on entry to ddb.  The screen switch was
restored using the cngrab() method, but cngrab() is more general so it
should not initialize 'debugger' and never did.  'debugger' was just
an over-engineered alias for kdb_active anyway.  It existed because
kdb_active (when it was named ddb_active) was considered as a private
kdb variable, and there are ordering problems initializing the variables
atomically with the state that they represent, but an extra variable and
method to set it increased these problems.

The bug caused LORs, but WITNESS is normally misconfigured with
WITNESS_SKIPSIN so it doesn't check the spinlocks used by wakeup() and
callouts.
2016-08-15 14:28:16 +00:00
..
apm
blank
daemon
dragon
fade
fire
green
logo
plasma Replace the cosine table with a sine table, which (due to the vagaries of 2016-01-02 16:40:37 +00:00
rain
snake
star
warp
scgfbrndr.c
schistory.c
scmouse.c sys: Make use of our rounddown() macro when sys/param.h is available. 2016-04-30 14:41:18 +00:00
scterm-teken.c
scterm.c
scvesactl.c
scvgarndr.c sys: Make use of our rounddown() macro when sys/param.h is available. 2016-04-30 14:41:18 +00:00
scvidctl.c
scvtb.c
syscons.c Change all uses of 'debugger' to kdb_active and remove this variable. This 2016-08-15 14:28:16 +00:00
syscons.h Quick fix for locking fixes in r172250. The lock added there was per- 2016-08-15 12:56:45 +00:00
sysmouse.c