[PATCH] 1:1 Userland threading stage 2.11/4:

Matthew Dillon dillon at apollo.backplane.com
Sat Feb 3 11:34:44 PST 2007


:Matthew Dillon wrote:
:>     Just as an aside, I seem to remember POSIX making a distinction between
:>     'global' signals and 'per-thread' signals.  Something about a signal that
:>     cannot be handled by a thread is queued globally and then processed by
:>     the first thread that can take it, or something like that.
:
:The current code unconditionally (tries to) queue to the first lwp; the 
:next step will queue it on the first lwp that doesn't mask the signal, 
:and failing that, globally. Though again, that's a next-step :).
:
:>     This would imply that we need to have a two-level signal delivery 
:>     architecture (lwp layer and process layer).
:
:I guess so too. Simon already has some thoughts about is, we talked this 
:afternoon (while I was reviewing the patch).
:
:Cheers,
:-- 
:         Thomas E. Spanjaard
:         tgen at netphreax.net

    I think we want to avoid having to scan the LWP list for a process.
    It is almost certainly easier for the LWP itself to simply check both
    signal sets (the per-LWP set and the per-process set).  We are only
    talking about a few instructions here... maybe a few nanoseconds in
    time.

						-Matt





More information about the Kernel mailing list