git: kernel - Fix another hard critical section issue with syscons, revamp locking
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Oct 19 23:28:32 PDT 2010
commit bd1cd9c20b15fdb8f23cd2fba5ff84154cf7ab5e
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Tue Oct 19 23:25:02 2010 -0700
kernel - Fix another hard critical section issue with syscons, revamp locking
* Use the new mtx_spinlock() facility instead of spinlock(). The new
facility supports reetrant locks.
* Call all sc_*() functions with the syscons lock held.
* Fix an issue in blink_screen() where a hard critical section panic
could potentially occur.
* Fix an issue in sc_puts() where adjusting the keyboard LED could still
cause a hard critical section panic. We just let the keyboard LED state
be wrong for now.
Summary of changes:
sys/dev/misc/syscons/syscons.c | 255 +++++++++++++++++++++++++---------------
1 files changed, 161 insertions(+), 94 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/bd1cd9c20b15fdb8f23cd2fba5ff84154cf7ab5e
--
DragonFly BSD source repository
More information about the Commits
mailing list