X-Git-Url: http://git.monstr.eu/?a=blobdiff_plain;f=kernel%2Fpid.c;h=ed6c343fe50dff7b546e43fd89102f43b898417e;hb=871dd09bdb02957e259ff672876b04891f356d10;hp=5d30c87e3c424667fe08fbe81e30eac8570a02c1;hpb=5d8515bc232172963a4cef007e97b08c5e4d0533;p=linux-2.6-microblaze.git diff --git a/kernel/pid.c b/kernel/pid.c index 5d30c87e3c42..ed6c343fe50d 100644 --- a/kernel/pid.c +++ b/kernel/pid.c @@ -343,6 +343,19 @@ struct task_struct *find_task_by_vpid(pid_t vnr) return find_task_by_pid_ns(vnr, task_active_pid_ns(current)); } +struct task_struct *find_get_task_by_vpid(pid_t nr) +{ + struct task_struct *task; + + rcu_read_lock(); + task = find_task_by_vpid(nr); + if (task) + get_task_struct(task); + rcu_read_unlock(); + + return task; +} + struct pid *get_task_pid(struct task_struct *task, enum pid_type type) { struct pid *pid;