Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Apr 2009 20:52:30 +0000 (UTC)
From:      Maksim Yevmenkin <emax@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r190857 - head/sys/dev/kbdmux
Message-ID:  <200904082052.n38KqU9p075633@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: emax
Date: Wed Apr  8 20:52:30 2009
New Revision: 190857
URL: http://svn.freebsd.org/changeset/base/190857

Log:
  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

Modified:
  head/sys/dev/kbdmux/kbdmux.c

Modified: head/sys/dev/kbdmux/kbdmux.c
==============================================================================
--- head/sys/dev/kbdmux/kbdmux.c	Wed Apr  8 20:43:19 2009	(r190856)
+++ head/sys/dev/kbdmux/kbdmux.c	Wed Apr  8 20:52:30 2009	(r190857)
@@ -104,10 +104,10 @@ MALLOC_DEFINE(M_KBDMUX, KEYBOARD_NAME, "
 
 #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) \



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200904082052.n38KqU9p075633>