• J
    rlimits: allow setrlimit to non-current tasks · 1c1e618d
    Jiri Slaby 提交于
    Add locking to allow setrlimit accept task parameter other than
    current.
    
    Namely, lock tasklist_lock for read and check whether the task
    structure has sighand non-null. Do all the signal processing under
    that lock still held.
    
    There are some points:
    1) security_task_setrlimit is now called with that lock held. This is
       not new, many security_* functions are called with this lock held
       already so it doesn't harm (all this security_* stuff does almost
       the same).
    2) task->sighand->siglock (in update_rlimit_cpu) is nested in
       tasklist_lock. This dependence is already existing.
    3) tsk->alloc_lock is nested in tasklist_lock. This is OK too, already
       existing dependence.
    Signed-off-by: NJiri Slaby <jirislaby@gmail.com>
    Cc: Oleg Nesterov <oleg@redhat.com>
    1c1e618d
sys.c 38.8 KB