cvs commit: src/sys/kern kern_sig.c
jeff at FreeBSD.org
Mon Mar 31 14:57:04 PST 2003
jeff 2003/03/31 14:57:01 PST
FreeBSD src repository
- The siglist in the proc holds signals that were blocked by all threads
when they were delivered. In signotify() check to see if we have
unblocked any of those signals and post them to the thread.
- Use td_sigmask instead of p_sigmask in all cases.
- In sigpending return both signals pending on the thread and proc.
- Define a function, sigtd(), that finds the appropriate thread to deliver
the signal to if psignal() has been called instead of tdsignal().
- Define a function, tdsignal(), that delivers a signal to a specific thread
or if that thread has the signal blocked it may deliver it to the process
where it will wait for a thread to unblock it.
- Since we are delivering signals to a specific thread we do not need to
abort the sleep of all threads.
- Rename the old tdsignal() to tdsigwakeup().
- Save and restore the old signal mask to and from the thread.
Revision Changes Path
1.220 +0 -0 src/sys/kern/kern_sig.c
More information about the cvs-src