Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Apr 2009 12:02:18 -0700
From:      Maksim Yevmenkin <emax@freebsd.org>
To:        Fabian Keil <freebsd-listen@fabiankeil.de>
Cc:        freebsd-current@freebsd.org
Subject:   Re: svn commit: r190857 - head/sys/dev/kbdmux
Message-ID:  <bb4a86c70904141202l5022d62fo954d6599a9dc73a@mail.gmail.com>
In-Reply-To: <20090414180020.34b97378@fabiankeil.de>
References:  <200904082052.n38KqU9p075633@svn.freebsd.org> <20090412170335.5a8a3169@fabiankeil.de> <bb4a86c70904121000p60b48632q22a5b92fc791f4f8@mail.gmail.com> <20090414180020.34b97378@fabiankeil.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Apr 14, 2009 at 9:00 AM, Fabian Keil
<freebsd-listen@fabiankeil.de> wrote:
> Maksim Yevmenkin <emax@freebsd.org> wrote:
>
>> On Sun, Apr 12, 2009 at 8:03 AM, Fabian Keil
>> <freebsd-listen@fabiankeil.de> wrote:
>> > Maksim Yevmenkin <emax@FreeBSD.org> wrote:
>> >
>> >> 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
>
> [...]
>
>> > Not even enabling the "visible characters" option helps
>> > because obviously backspace is broken too.
>>
>> if you do not need kbdmix(4) you might just want to disable it on your
>> system. i think it should help with your particular problem.
>
> Removing kbdmux from the kernel does indeed work around the problem.
>
>> > Before theses locks were introduces I worked around the problem
>> > with this gets() hack (which forced me to reduce the key entropy):
>> > http://www.fabiankeil.de/sourcecode/freebsd/gets-no-duplicates.diff
>> > and now I will simply revert your commit locally, but I assume I'm
>> > not the only geli user who prefers to be able to boot the system
>> > without local patches.
>>
>> if your primary keyboard is atkbd(4), you might want to try the
>> following patch. it is completely untested (i did not even compile
>> it), so be warned ...
>
> It compiles alright but once the system is running the keyboard
> no longer works at all. I tested the patch with kbdmux already
> disabled, but I assume it doesn't make a difference.

hmmm, interesting, i do not see this. atkbd(4)  is working just fine
with and without kbdmux(4) for me in sinlge user, ddb and multiuser.

> Anyway, I don't need kbdmux, so having to remove it is no problem.
> Thanks a lot.

ok

thanks
max



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