summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/src/signalsend.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-08-26 16:03:35 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-08-27 10:48:17 +0200
commit75f6d18ee0a470c092216249ab1dc6f3c5187dea (patch)
tree33691f1b1c80c0223fb8413eac92563c18fa8764 /cpukit/rtems/src/signalsend.c
parentringbuf: Add SMP support (diff)
downloadrtems-75f6d18ee0a470c092216249ab1dc6f3c5187dea.tar.bz2
rtems: Add SMP support for signals
Add and use _ASR_Get_posted_signals(). The post-switch handler is not protected by disabled thread dispatching. Use proper SMP lock for signal management.
Diffstat (limited to 'cpukit/rtems/src/signalsend.c')
-rw-r--r--cpukit/rtems/src/signalsend.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/cpukit/rtems/src/signalsend.c b/cpukit/rtems/src/signalsend.c
index f1c7b2c254..c231235cd9 100644
--- a/cpukit/rtems/src/signalsend.c
+++ b/cpukit/rtems/src/signalsend.c
@@ -46,10 +46,10 @@ rtems_status_code rtems_signal_send(
if ( ! _ASR_Is_null_handler( asr->handler ) ) {
if ( asr->is_enabled ) {
- _ASR_Post_signals( signal_set, &asr->signals_posted );
+ _ASR_Post_signals( asr, signal_set, &asr->signals_posted );
_Thread_Signal_notification( the_thread );
} else {
- _ASR_Post_signals( signal_set, &asr->signals_pending );
+ _ASR_Post_signals( asr, signal_set, &asr->signals_pending );
}
_Objects_Put( &the_thread->Object );
return RTEMS_SUCCESSFUL;