summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>2006-12-16 20:33:26 +0000
committerache <ache@FreeBSD.org>2006-12-16 20:33:26 +0000
commit84d03f55f7b237a1b815440821f87aeecd4d02f7 (patch)
tree04377a439c5a34cd41a4bb1ed6ea457098a1ef1c /sys
parent10e46645522be17076262545d5ddf178b3ebab64 (diff)
downloadFreeBSD-src-84d03f55f7b237a1b815440821f87aeecd4d02f7.zip
FreeBSD-src-84d03f55f7b237a1b815440821f87aeecd4d02f7.tar.gz
Fix NULL pointer reference for INVARIANTS case
Submitted by: Yuriy Tsibizov <Yuriy.Tsibizov@gfk.ru>
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/subr_sleepqueue.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/subr_sleepqueue.c b/sys/kern/subr_sleepqueue.c
index cc1fc89..4479d13 100644
--- a/sys/kern/subr_sleepqueue.c
+++ b/sys/kern/subr_sleepqueue.c
@@ -295,6 +295,7 @@ sleepq_add(void *wchan, struct lock_object *lock, const char *wmesg, int flags,
* into the sleep queue already in use by this wait channel.
*/
if (sq == NULL) {
+ sq = td->td_sleepqueue;
#ifdef INVARIANTS
int i;
for (i = 0; i < NR_SLEEPQS; i++)
@@ -313,7 +314,6 @@ sleepq_add(void *wchan, struct lock_object *lock, const char *wmesg, int flags,
sleepq_max_depth = sc->sc_max_depth;
}
#endif
- sq = td->td_sleepqueue;
LIST_INSERT_HEAD(&sc->sc_queues, sq, sq_hash);
sq->sq_wchan = wchan;
#ifdef INVARIANTS
OpenPOWER on IntegriCloud