DragonFly kernel List (threaded) for 2007-02
DragonFly BSD
DragonFly kernel List (threaded) for 2007-02
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

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


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 3 Feb 2007 11:23:36 -0800 (PST)

: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@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



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]