diff options
Diffstat (limited to 'kernel/pid.c')
-rw-r--r-- | kernel/pid.c | 13 |
1 files changed, 13 insertions, 0 deletions
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) | |||
343 | return find_task_by_pid_ns(vnr, task_active_pid_ns(current)); | 343 | return find_task_by_pid_ns(vnr, task_active_pid_ns(current)); |
344 | } | 344 | } |
345 | 345 | ||
346 | struct task_struct *find_get_task_by_vpid(pid_t nr) | ||
347 | { | ||
348 | struct task_struct *task; | ||
349 | |||
350 | rcu_read_lock(); | ||
351 | task = find_task_by_vpid(nr); | ||
352 | if (task) | ||
353 | get_task_struct(task); | ||
354 | rcu_read_unlock(); | ||
355 | |||
356 | return task; | ||
357 | } | ||
358 | |||
346 | struct pid *get_task_pid(struct task_struct *task, enum pid_type type) | 359 | struct pid *get_task_pid(struct task_struct *task, enum pid_type type) |
347 | { | 360 | { |
348 | struct pid *pid; | 361 | struct pid *pid; |