]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r339823:
authorVladimir Kondratyev <wulf@FreeBSD.org>
Sat, 17 Nov 2018 20:18:15 +0000 (20:18 +0000)
committerVladimir Kondratyev <wulf@FreeBSD.org>
Sat, 17 Nov 2018 20:18:15 +0000 (20:18 +0000)
commit04a7a36d95a6948ec1b1b86fe098b9fc71168bdc
tree47686b820215d8179bb1fd6e645e44d8ace9f6cd
parent70c13856e27464fe887a922e2a937de05354f1de
MFC r339823:

evdev: Use console lock as evdev lock for all supported keyboard drivers.

Now evdev part of keyboard drivers does not take any locks if corresponding
input/eventN device node is not opened by userland consumers.

Do not assert console lock inside evdev to handle the cases when keyboard
driver is called from some special single-threaded context like shutdown
thread.

MFC r339824:

evdev: disable evdev if it is invoked from KDB or panic context

This allow to prevent deadlock on entering KDB if one of evdev locks is
already taken by userspace process.

Also this change discards all but LED console events produced by KDB as
unrelated to userspace.
sys/dev/atkbdc/atkbd.c
sys/dev/evdev/cdev.c
sys/dev/evdev/evdev.c
sys/dev/evdev/evdev_private.h
sys/dev/kbdmux/kbdmux.c
sys/dev/usb/input/ukbd.c