diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2020-11-21 00:14:30 +0100 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2020-12-10 19:42:49 +0100 |
commit | ed77e80e14a3cd55c73848b9e8043020e717ce12 (patch) | |
tree | bdef0dabba2a4dcf399d46a01d17e418dce41f95 /kernel/kcmp.c | |
parent | proc/fd: In tid_fd_mode use task_lookup_fd_rcu (diff) | |
download | linux-ed77e80e14a3cd55c73848b9e8043020e717ce12.tar.xz linux-ed77e80e14a3cd55c73848b9e8043020e717ce12.zip |
kcmp: In get_file_raw_ptr use task_lookup_fd_rcu
Modify get_file_raw_ptr to use task_lookup_fd_rcu. The helper
task_lookup_fd_rcu does the work of taking the task lock and verifying
that task->files != NULL and then calls files_lookup_fd_rcu. So let
use the helper to make a simpler implementation of get_file_raw_ptr.
Acked-by: Cyrill Gorcunov <gorcunov@gmail.com>
Link: https://lkml.kernel.org/r/20201120231441.29911-13-ebiederm@xmission.com
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Diffstat (limited to 'kernel/kcmp.c')
-rw-r--r-- | kernel/kcmp.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/kernel/kcmp.c b/kernel/kcmp.c index 990717c1aed3..36e58eb5a11d 100644 --- a/kernel/kcmp.c +++ b/kernel/kcmp.c @@ -61,16 +61,11 @@ static int kcmp_ptr(void *v1, void *v2, enum kcmp_type type) static struct file * get_file_raw_ptr(struct task_struct *task, unsigned int idx) { - struct file *file = NULL; + struct file *file; - task_lock(task); rcu_read_lock(); - - if (task->files) - file = files_lookup_fd_rcu(task->files, idx); - + file = task_lookup_fd_rcu(task, idx); rcu_read_unlock(); - task_unlock(task); return file; } |