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.168 / U:0.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site