diff options
| author | Vladimir Kondratyev <wulf@FreeBSD.org> | 2018-10-27 20:22:41 +0000 |
|---|---|---|
| committer | Vladimir Kondratyev <wulf@FreeBSD.org> | 2018-10-27 20:22:41 +0000 |
| commit | f86e7267f5fd81461dbf15ee92763403191c43b9 (patch) | |
| tree | 66665d22ffb1420027c219fe23af3d27eeaf4b9a /sys/dev/evdev/evdev_private.h | |
| parent | b5532964e74ae1028c6f3aa5257f4af52251154c (diff) | |
Notes
Diffstat (limited to 'sys/dev/evdev/evdev_private.h')
| -rw-r--r-- | sys/dev/evdev/evdev_private.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/evdev/evdev_private.h b/sys/dev/evdev/evdev_private.h index 05206a9d09bd..e1a5d1822cd8 100644 --- a/sys/dev/evdev/evdev_private.h +++ b/sys/dev/evdev/evdev_private.h @@ -132,9 +132,14 @@ struct evdev_dev LIST_HEAD(, evdev_client) ev_clients; }; +#define SYSTEM_CONSOLE_LOCK &Giant + #define EVDEV_LOCK(evdev) mtx_lock((evdev)->ev_lock) #define EVDEV_UNLOCK(evdev) mtx_unlock((evdev)->ev_lock) -#define EVDEV_LOCK_ASSERT(evdev) mtx_assert((evdev)->ev_lock, MA_OWNED) +#define EVDEV_LOCK_ASSERT(evdev) do { \ + if ((evdev)->ev_lock != SYSTEM_CONSOLE_LOCK) \ + mtx_assert((evdev)->ev_lock, MA_OWNED); \ +} while (0) #define EVDEV_ENTER(evdev) do { \ if ((evdev)->ev_lock_type == EV_LOCK_INTERNAL) \ EVDEV_LOCK(evdev); \ |
