pids: introduce find_get_task_by_vpid() helper

There are several functions that do find_task_by_vpid() followed by
get_task_struct().  We can use a helper function instead.

Link: http://lkml.kernel.org/r/1509602027-11337-1-git-send-email-rppt@linux.vnet.ibm.com
Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Acked-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Mike Rapoport
2018-02-06 15:40:17 -08:00
committed by Linus Torvalds
parent eab216e9cc
commit 2ee0826085
8 changed files with 33 additions and 68 deletions

View File

@@ -250,15 +250,10 @@ int yama_task_prctl(int option, unsigned long arg2, unsigned long arg3,
} else {
struct task_struct *tracer;
rcu_read_lock();
tracer = find_task_by_vpid(arg2);
if (tracer)
get_task_struct(tracer);
else
tracer = find_get_task_by_vpid(arg2);
if (!tracer) {
rc = -EINVAL;
rcu_read_unlock();
if (tracer) {
} else {
rc = yama_ptracer_add(tracer, myself);
put_task_struct(tracer);
}