• Roland McGrath's avatar
    [PATCH] do_sigaction locking cleanup · 530a7dbc
    Roland McGrath authored
    This changes do_sigaction to avoid read_lock(&tasklist_lock) on every
    call.  Only in the fairly uncommon cases where it's really needed will
    it take that lock (which requires unlocking and relocking the siglock
    for locking order).
    
    I also changed the ERESTARTSYS added in my earlier patch to ERESTARTNOINTR.
    That is an "instantaneous" case, and there is no reason to have it possibly
    return EINTR if !SA_RESTART (which AFAIK sigaction never could before, and
    it might not be kosher by POSIX); rollback is always better.
    530a7dbc
signal.c 52.8 KB