projects/linux·commit 031af165

sys_getppid: add missing rcu_dereference

031af165 · Mandeep Singh Baines <[email protected]> · 2011-12-08 14:34:44 -08:00

In order to safely dereference current->real_parent inside an
rcu_read_lock, we need an rcu_dereference.

Signed-off-by: Mandeep Singh Baines <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Pavel Emelyanov <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Kees Cook <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Commit
031af165b1cd295ef04d2bfbcae9bc3cb9180735
Parents
1cee22b7

Changes

1 files changed · +1 −1

FileStatusAddDelContent
kernel/timer.cmodified+1−1View file

kernel/timer.c

View file
diff --git a/kernel/timer.c b/kernel/timer.c
index dbaa624..9c3c62b 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -1368,7 +1368,7 @@ SYSCALL_DEFINE0(getppid)
int pid;
rcu_read_lock();
- pid = task_tgid_vnr(current->real_parent);
+ pid = task_tgid_vnr(rcu_dereference(current->real_parent));
rcu_read_unlock();
return pid;