[PATCH v2 0/4] Avoid potential recursion in ASR handling

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Feb 19 09:40:34 UTC 2021


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



More information about the devel mailing list