From 2e8cb2cac5fe9c79a114a56dab04edb0851bd8ce Mon Sep 17 00:00:00 2001 From: emax Date: Mon, 22 Sep 2008 22:08:43 +0000 Subject: Use Giant for kbdmux(4) locking. This is to workaround the problem where interrupt handlers may race with kbdmux(4) in polling mode. PR: kern/127446 Reported by: Eygene Ryabinkin rea-fbsd at codelabs dot ru Tested by: Eygene Ryabinkin rea-fbsd at codelabs dot ru MFC after: 1 week --- sys/dev/kbdmux/kbdmux.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'sys/dev/kbdmux/kbdmux.c') diff --git a/sys/dev/kbdmux/kbdmux.c b/sys/dev/kbdmux/kbdmux.c index 3ece059..a979def 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) - -#define KBDMUX_UNLOCK(s) - +#define KBDMUX_LOCK(s) \ + mtx_lock(&Giant) +#define KBDMUX_UNLOCK(s) \ + mtx_unlock(&Giant) #define KBDMUX_LOCK_ASSERT(s, w) #define KBDMUX_SLEEP(s, f, d, t) \ -- cgit v1.1