diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-04-28 06:55:16 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-02 07:46:17 +0200 |
commit | 259d885168b548b5ebea5067f112a0d8b94d167f (patch) | |
tree | 818c557b214737bfd38b533a7fc8716558fa9834 | |
parent | score: __RTEMS_DO_NOT_INLINE_CORE_MUTEX_SEIZE__ (diff) | |
download | rtems-259d885168b548b5ebea5067f112a0d8b94d167f.tar.bz2 |
posix: Remove superfluous thread dispatch disable
The _Thread_queue_Enqueue_critical() already deals with thread
dispatching.
Update #2555.
-rw-r--r-- | cpukit/posix/src/sigtimedwait.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/cpukit/posix/src/sigtimedwait.c b/cpukit/posix/src/sigtimedwait.c index 8f5693b58c..77dbe533ca 100644 --- a/cpukit/posix/src/sigtimedwait.c +++ b/cpukit/posix/src/sigtimedwait.c @@ -150,20 +150,18 @@ int sigtimedwait( the_info->si_signo = -1; - _Thread_Disable_dispatch(); - executing->Wait.return_code = EINTR; - executing->Wait.option = *set; - executing->Wait.return_argument = the_info; - _Thread_queue_Enqueue_critical( - &_POSIX_signals_Wait_queue.Queue, - POSIX_SIGNALS_TQ_OPERATIONS, - executing, - STATES_WAITING_FOR_SIGNAL | STATES_INTERRUPTIBLE_BY_SIGNAL, - interval, - EAGAIN, - &lock_context - ); - _Thread_Enable_dispatch(); + executing->Wait.return_code = EINTR; + executing->Wait.option = *set; + executing->Wait.return_argument = the_info; + _Thread_queue_Enqueue_critical( + &_POSIX_signals_Wait_queue.Queue, + POSIX_SIGNALS_TQ_OPERATIONS, + executing, + STATES_WAITING_FOR_SIGNAL | STATES_INTERRUPTIBLE_BY_SIGNAL, + interval, + EAGAIN, + &lock_context + ); /* * When the thread is set free by a signal, it is need to eliminate |