From 7fab871d8c286b59928cba454a398fc8f65d5ab6 Mon Sep 17 00:00:00 2001 From: David Xu Date: Mon, 17 Dec 2007 08:09:37 +0000 Subject: [PATCH] Check NULL pointer. --- sys/kern/kern_umtx.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_umtx.c b/sys/kern/kern_umtx.c index 0857366dbb1f..6fa6beffc5aa 100644 --- a/sys/kern/kern_umtx.c +++ b/sys/kern/kern_umtx.c @@ -1407,8 +1407,17 @@ umtx_pi_adjust_locked(struct thread *td, u_char oldpri) void umtx_pi_adjust(struct thread *td, u_char oldpri) { + struct umtx_q *uq; + struct umtx_pi *pi; + + uq = td->td_umtxq; mtx_lock_spin(&umtx_lock); - umtx_pi_adjust_locked(td, oldpri); + /* + * Pick up the lock that td is blocked on. + */ + pi = uq->uq_pi_blocked; + if (pi != NULL) + umtx_pi_adjust_locked(td, oldpri); mtx_unlock_spin(&umtx_lock); }