lkml.org 
[lkml]   [2008]   [Mar]   [28]   [last100]   RSS-feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Complete thread (EXPERIMENTAL)
/
DateFri, 28 Mar 2008 17:53:16 -0700 (PDT)
FromLinus Torvalds <>
SubjectRe: [PATCH 2/4] set_restore_sigmask TIF_SIGPENDING
Digg This


On Fri, 28 Mar 2008, Roland McGrath wrote:

Set TIF_SIGPENDING in set_restore_sigmask. This lets arch code take TIF_RESTORE_SIGMASK out of the set of bits that will be noticed on return to user mode. On some machines those bits are scarce, and we can free this unneeded one up for other uses.

Hmm. That probably means that TIF_RESTORE_SIGMASK shouldn't be a "TIF" 
flag at all, but a "TS" ("thread status") flag.
The TS flags are faster, because they are thread-synchronous and do not need atomic accesses (ie they are purely thread-local in setting, testing and clearing).

Of course, it may well not be worth it. Unlike the TIF flags, the TS flags have been architecture-specific and I don't think all architectures even do them (x86 uses them for FP state bits and stuff like that).
I guess TIF_RESTORE_SIGMASK is never *so* performance-critical that we'd care about the difference between a single cycle (approx) for a non-atomic "or" into memory and an atomic bitop (~50 cycles or so).
Linus



\
ISP Services
Valid XHTML 1.0!\ /
Valid CSS! Last update: 2008-03-29 01:57    [W:0.442 / U:0.030 seconds]
©2003-2005 Jasper Spaans