DragonFlyBSD Kernel Audit
DF-0140 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/kern/subr_sleepqueue.c b/sys/kern/subr_sleepqueue.c
--- a/sys/kern/subr_sleepqueue.c
+++ b/sys/kern/subr_sleepqueue.c
@@ -262,6 +262,7 @@
 	 * thread has been placed on the sleepq.
 	 */
 	wc = sleepq_wclookup(wchan);
+	KKASSERT(queue >= 0 && queue < SLEEPQ_NRQUEUES);
 	++wc->wc_refs;
 	++wc->wc_blocked[queue];
 	wc->wc_type = flags & SLEEPQ_TYPE;