diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-02-17 09:05:53 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-02-20 15:18:49 +0100 |
commit | 74ca8b7517ac463b73daf7d6b4773a1987a6760b (patch) | |
tree | 1ff6e95951e529f009ac28aa04eaee7e5dc98e29 /cpukit/rtems/src/signalcatch.c | |
parent | rtems: Remove unused ASR_Information::nest_level (diff) | |
download | rtems-74ca8b7517ac463b73daf7d6b4773a1987a6760b.tar.bz2 |
rtems: Move _Signal_Action_handler()
Move _Signal_Action_handler() and signal MP initialization to
rtems_signal_send(). The goal is to make _Signal_Action_handler() a
static function in a follow up patch.
Update #4244.
Diffstat (limited to 'cpukit/rtems/src/signalcatch.c')
-rw-r--r-- | cpukit/rtems/src/signalcatch.c | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/cpukit/rtems/src/signalcatch.c b/cpukit/rtems/src/signalcatch.c index 27d7503a31..e4ff15fd40 100644 --- a/cpukit/rtems/src/signalcatch.c +++ b/cpukit/rtems/src/signalcatch.c @@ -21,51 +21,13 @@ #include "config.h" #endif -#include <rtems/sysinit.h> #include <rtems/rtems/signalimpl.h> #include <rtems/rtems/asrimpl.h> #include <rtems/rtems/tasksdata.h> -#include <rtems/score/assert.h> #include <rtems/score/threadimpl.h> RTEMS_STATIC_ASSERT( RTEMS_DEFAULT_MODES == 0, _ASR_Create_mode_set ); -void _Signal_Action_handler( - Thread_Control *executing, - Thread_Action *action, - ISR_lock_Context *lock_context -) -{ - RTEMS_API_Control *api; - ASR_Information *asr; - rtems_signal_set signal_set; - rtems_mode prev_mode; - - (void) action; - - /* - * Signal Processing - */ - - api = executing->API_Extensions[ THREAD_API_RTEMS ]; - asr = &api->Signal; - signal_set = _ASR_Get_posted_signals( asr ); - - if ( signal_set == 0 ) { - return; - } - - _Thread_State_release( executing, lock_context ); - - rtems_task_mode( asr->mode_set, RTEMS_ALL_MODE_MASKS, &prev_mode ); - - (*asr->handler)( signal_set ); - - rtems_task_mode( prev_mode, RTEMS_ALL_MODE_MASKS, &prev_mode ); - - _Thread_State_acquire( executing, lock_context ); -} - rtems_status_code rtems_signal_catch( rtems_asr_entry asr_handler, rtems_mode mode_set @@ -90,19 +52,3 @@ rtems_status_code rtems_signal_catch( _Thread_State_release( executing, &lock_context ); return RTEMS_SUCCESSFUL; } - -#if defined(RTEMS_MULTIPROCESSING) -static void _Signal_MP_Initialize( void ) -{ - _MPCI_Register_packet_processor( - MP_PACKET_SIGNAL, - _Signal_MP_Process_packet - ); -} - -RTEMS_SYSINIT_ITEM( - _Signal_MP_Initialize, - RTEMS_SYSINIT_CLASSIC_SIGNAL_MP, - RTEMS_SYSINIT_ORDER_MIDDLE -); -#endif |