lkml.org 
[lkml]   [2006]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [RFC][PATCH 04/20] pspace: Allow multiple instaces of the process id namespace
    From
    Date
    Kirill Korotaev <dev@sw.ru> writes:

    >> + * kill_pspace_info() sends a signal to all processes in a process space.
    >> + * This is what kill(-1, sig) does.
    >> + */
    >> +
    >> +int __kill_pspace_info(int sig, struct siginfo *info, struct pspace *pspace)
    >> +{
    >> + struct task_struct *p = NULL;
    >> + int retval = 0, count = 0;
    >> +
    >> + for_each_process(p) {
    >> + int err;
    >> + /* Skip the current pspace leader */
    >> + if (current_pspace_leader(p))
    >> + continue;
    >> +
    >> + /* Skip the sender of the signal */
    >> + if (p->signal == current->signal)
    >> + continue;
    >> +
    >> + /* Skip processes outside the target process space */
    >> + if (!in_pspace(pspace, p))
    >> + continue;
    >> +
    >> + /* Finally it is a good process send the signal. */
    >> + err = group_send_sig_info(sig, info, p);
    >> + ++count;
    >> + if (err != -EPERM)
    >> + retval = err;
    > <<<<
    > why EPERM is ok?
    > do you want to miss some tasks?


    A good question. This is how kill -1 is currently implemented.
    It doesn't align with how signals are sent to a process group,
    so it could very well be wrong.

    >> + }
    >> + return count ? retval : -ESRCH;
    >> +}
    >> +
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-02-11 10:47    [W:0.022 / U:61.128 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site