aboutsummaryrefslogtreecommitdiff
path: root/kernel/proc/sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/proc/sched.c')
-rw-r--r--kernel/proc/sched.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/proc/sched.c b/kernel/proc/sched.c
index c8f209c..91264fa 100644
--- a/kernel/proc/sched.c
+++ b/kernel/proc/sched.c
@@ -333,8 +333,12 @@ void sched_wakeup_on(ktqueue_t *q, kthread_t **ktp)
{
// NOT_YET_IMPLEMENTED("PROCS: sched_wakeup_on");
- if (sched_queue_empty(q))
+ if (sched_queue_empty(q) || q == NULL)
{
+ if (ktp)
+ {
+ *ktp = NULL;
+ }
return;
}
@@ -344,6 +348,7 @@ void sched_wakeup_on(ktqueue_t *q, kthread_t **ktp)
{
*ktp = thr;
}
+
sched_make_runnable(thr);
intr_setipl(oldIPL);
}