pussuw commented on code in PR #8740:
URL: https://github.com/apache/nuttx/pull/8740#discussion_r1127451889


##########
sched/signal/sig_dispatch.c:
##########
@@ -373,11 +373,11 @@ int nxsig_tcbdispatch(FAR struct tcb_s *stcb, siginfo_t 
*info)
 #endif
     {
 #ifdef CONFIG_LIB_SYSCALL
-      /* If the thread is in syscall, schedule the sigaction here */
+      /* If the thread is in syscall, queue the sigaction here */
 
-      if ((stcb->flags & TCB_FLAG_SYSCALL) != 0)
+      if (masked == 0)

Review Comment:
   I think the original implementation worked like this, so this would mean to 
revert #2851 ?
   
   What about the signal action in case 1. ? Even if a signal is masked, the 
task might have injected an action / signal handler for the signal or there 
might be a default action. When the procsigmask changes I think the signal 
handler should be called, i.e. the signal action should be queued even in case 
1. Or am I missing something ?



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to