This patch set fixes a potential issue with a recursion in the ASR
handling.  The main issue is that _Signal_Action_handler() used
rtems_task_mode() to save, set, and restore the task mode during ASR
processing.  This is effectively a recursive call to thread dispatching
which may result in the next level of ASR processing.

v2:

Address review comments.

Sebastian Huber (4):
  rtems: Remove _Modes_Set_interrupt_level()
  rtems: New errors for rtems_signal_catch()
  rtems: Add _Modes_Apply_timeslice_to_thread()
  rtems: Avoid potential recursion in ASR handling

 cpukit/include/rtems/rtems/modesimpl.h | 67 ++++++++++++++++--
 cpukit/rtems/src/signalcatch.c         | 15 ++++
 cpukit/rtems/src/signalsend.c          | 98 ++++++++++++++++++++++++--
 cpukit/rtems/src/taskmode.c            | 25 ++-----
 4 files changed, 174 insertions(+), 31 deletions(-)

-- 
2.26.2

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to