[tip:sched/core] sched: Mark parent and real_parent as __rcu

From: tip-bot for Kees Cook
Date: Thu Dec 15 2011 - 04:57:46 EST


Commit-ID: abd63bc3a0f65ae9d85bc3b1bb067d3e3c2b2cc2
Gitweb: http://git.kernel.org/tip/abd63bc3a0f65ae9d85bc3b1bb067d3e3c2b2cc2
Author: Kees Cook <keescook@xxxxxxxxxxxx>
AuthorDate: Wed, 14 Dec 2011 14:39:26 -0800
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Thu, 15 Dec 2011 08:21:59 +0100

sched: Mark parent and real_parent as __rcu

The parent and real_parent pointers should be considered __rcu,
since they should be held under either tasklist_lock or
rcu_read_lock.

Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
Link: http://lkml.kernel.org/r/20111214223925.GA27578@xxxxxxxxxxxxxxx
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
---
include/linux/sched.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/sched.h b/include/linux/sched.h
index cc8c620..5ef0901 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1330,8 +1330,8 @@ struct task_struct {
* older sibling, respectively. (p->father can be replaced with
* p->real_parent->pid)
*/
- struct task_struct *real_parent; /* real parent process */
- struct task_struct *parent; /* recipient of SIGCHLD, wait4() reports */
+ struct task_struct __rcu *real_parent; /* real parent process */
+ struct task_struct __rcu *parent; /* recipient of SIGCHLD, wait4() reports */
/*
* children/sibling forms the list of my natural children
*/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/