diff options
author | Seigo Tanimura <tanimura@FreeBSD.org> | 2003-11-09 09:17:26 +0000 |
---|---|---|
committer | Seigo Tanimura <tanimura@FreeBSD.org> | 2003-11-09 09:17:26 +0000 |
commit | 512824f8f7748f7bb54ef900bc8e68a95a3d0f4d (patch) | |
tree | 19de3ca43ba82c3cf15a4a6c7fba917e0f7e416b /sys/dev/kbd | |
parent | 2e55d247a6d6610c98412798ff06d682f2ee91c6 (diff) | |
download | src-512824f8f7748f7bb54ef900bc8e68a95a3d0f4d.tar.gz src-512824f8f7748f7bb54ef900bc8e68a95a3d0f4d.zip |
- Implement selwakeuppri() which allows raising the priority of a
thread being waken up. The thread waken up can run at a priority as
high as after tsleep().
- Replace selwakeup()s with selwakeuppri()s and pass appropriate
priorities.
- Add cv_broadcastpri() which raises the priority of the broadcast
threads. Used by selwakeuppri() if collision occurs.
Not objected in: -arch, -current
Notes
Notes:
svn path=/head/; revision=122352
Diffstat (limited to 'sys/dev/kbd')
-rw-r--r-- | sys/dev/kbd/kbd.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/kbd/kbd.c b/sys/dev/kbd/kbd.c index 1e8785d5cc99..f5dd583fd1d6 100644 --- a/sys/dev/kbd/kbd.c +++ b/sys/dev/kbd/kbd.c @@ -676,7 +676,7 @@ genkbd_event(keyboard_t *kbd, int event, void *arg) sc->gkb_flags &= ~KB_ASLEEP; wakeup(sc); } - selwakeup(&sc->gkb_rsel); + selwakeuppri(&sc->gkb_rsel, PZERO); return 0; default: return EINVAL; @@ -747,7 +747,7 @@ genkbd_event(keyboard_t *kbd, int event, void *arg) sc->gkb_flags &= ~KB_ASLEEP; wakeup(sc); } - selwakeup(&sc->gkb_rsel); + selwakeuppri(&sc->gkb_rsel, PZERO); } return 0; |