tmedicci opened a new pull request, #8926:
URL: https://github.com/apache/nuttx/pull/8926

   ## Summary
   
   While delivering a signal to a task that is currently running on the other 
core (SMP-enabled), the xtensa_sig_deliver needs to leave the critical section 
first. This should use the interrupt state (PS register) of the previously 
duplicated registers set explicitly for the signal handler.
   
   The saved state (saved registers prior to the task's interruption to treat 
the signal) should only be used when restoring the task's registers after 
signal handling.
   
   ## Impact
   
   This allows running tasks to receive a signal while they are running on the 
other core in an SMP-enabled environment.
   
   ## Testing
   
   This behavior can be verified by selecting `EXAMPLES_ALARM` app. In order to 
force the task to be running, one could omit `usleep` on `alarm_main.c`. Prior 
to this commit, the application crashed while delivering the signal to the app.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to