From 3728505c2189533e980312a1e8e9870af0f68890 Mon Sep 17 00:00:00 2001 From: emax Date: Wed, 8 Apr 2009 20:52:30 +0000 Subject: Undo SVN rev 183283 Do not use Giant for kbdmux(4) locking. This is wrong and apparently causing more problems than it solves. This will re-open the issue where interrupt handlers may race with kbdmux(4) in polling mode. Typical symptoms include (but not limited to) duplicated and/or missing characters when low level console functions (such as gets) are used while interrupts are enabled (for example geli password prompt, mountroot prompt etc.) MFC after: 3 days --- sys/dev/kbdmux/kbdmux.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'sys/dev/kbdmux') diff --git a/sys/dev/kbdmux/kbdmux.c b/sys/dev/kbdmux/kbdmux.c index 07b592f..ac6095c 100644 --- a/sys/dev/kbdmux/kbdmux.c +++ b/sys/dev/kbdmux/kbdmux.c @@ -104,10 +104,10 @@ MALLOC_DEFINE(M_KBDMUX, KEYBOARD_NAME, "Keyboard multiplexor"); #define KBDMUX_LOCK_DESTROY(s) -#define KBDMUX_LOCK(s) \ - mtx_lock(&Giant) -#define KBDMUX_UNLOCK(s) \ - mtx_unlock(&Giant) +#define KBDMUX_LOCK(s) + +#define KBDMUX_UNLOCK(s) + #define KBDMUX_LOCK_ASSERT(s, w) #define KBDMUX_SLEEP(s, f, d, t) \ -- cgit v1.1