summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-11-23 14:16:05 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-11-24 09:49:08 +0100
commit616ffa9668e993dd8506d101cc0d910fcdd5ccfe (patch)
tree551eda5f5d596879343133d9e7eeebea2fb5c40e
parentrtems-bsd-mutex: Update due to API changes (diff)
downloadrtems-libbsd-616ffa9668e993dd8506d101cc0d910fcdd5ccfe.tar.bz2
Use _Thread_Dispatch_direct()
-rw-r--r--freebsd/sys/kern/subr_sleepqueue.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/freebsd/sys/kern/subr_sleepqueue.c b/freebsd/sys/kern/subr_sleepqueue.c
index b91806f8..0aed7f5c 100644
--- a/freebsd/sys/kern/subr_sleepqueue.c
+++ b/freebsd/sys/kern/subr_sleepqueue.c
@@ -427,7 +427,7 @@ sleepq_set_timeout(void *wchan, int timo)
WATCHDOG_INACTIVE);
_Thread_Timer_insert_relative(executing, cpu_self, sleepq_timeout,
(Watchdog_Interval)timo);
- _Thread_Dispatch_enable(cpu_self);
+ _Thread_Dispatch_direct(cpu_self);
#endif /* __rtems__ */
}
@@ -672,8 +672,7 @@ sleepq_switch(void *wchan, int pri)
_Thread_Clear_state(executing, STATES_WAITING_FOR_BSD_WAKEUP);
}
- _Thread_Dispatch_enable(cpu_self);
-
+ _Thread_Dispatch_direct(cpu_self);
_Thread_Wait_acquire_default(executing, &lock_context);
switch (td->td_sq_state) {
@@ -976,7 +975,7 @@ sleepq_resume_thread(struct sleepqueue *sq, struct thread *td, int pri)
_Thread_Timer_remove(thread);
_Thread_Clear_state(thread, STATES_WAITING_FOR_BSD_WAKEUP);
- _Thread_Dispatch_enable(cpu_self);
+ _Thread_Dispatch_direct(cpu_self);
} else {
_Thread_Wait_release_default(thread, &lock_context);
}