diff options
author | emax <emax@FreeBSD.org> | 2009-04-08 20:52:30 +0000 |
---|---|---|
committer | emax <emax@FreeBSD.org> | 2009-04-08 20:52:30 +0000 |
commit | 3728505c2189533e980312a1e8e9870af0f68890 (patch) | |
tree | 7cfa1ba7b6c3622824cddc974e959ab6c63a8432 /sys/dev/kbdmux/kbdmux.c | |
parent | da6f64f1ca2e012e726eff8495aec3861030241d (diff) | |
download | FreeBSD-src-3728505c2189533e980312a1e8e9870af0f68890.zip FreeBSD-src-3728505c2189533e980312a1e8e9870af0f68890.tar.gz |
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
Diffstat (limited to 'sys/dev/kbdmux/kbdmux.c')
-rw-r--r-- | sys/dev/kbdmux/kbdmux.c | 8 |
1 files changed, 4 insertions, 4 deletions
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) \ |