diff options
author | Ingo Molnar <mingo@elte.hu> | 2010-08-23 11:32:34 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-08-23 11:32:34 +0200 |
commit | a6b9b4d50f492630443b38404d1f436b3b748c14 (patch) | |
tree | f3512389c42cecfae50b6a315ec6ab1fa470e30d /kernel/pid.c | |
parent | e36c886a0f9d624377977fa6cae309cfd7f362fa (diff) | |
parent | 28457ee69c473a903e51e26c7bcd6f1e9eceb93e (diff) | |
download | op-kernel-dev-a6b9b4d50f492630443b38404d1f436b3b748c14.zip op-kernel-dev-a6b9b4d50f492630443b38404d1f436b3b748c14.tar.gz |
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu
Diffstat (limited to 'kernel/pid.c')
-rw-r--r-- | kernel/pid.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/pid.c b/kernel/pid.c index d55c6fb..39b65b6 100644 --- a/kernel/pid.c +++ b/kernel/pid.c @@ -401,7 +401,7 @@ struct task_struct *pid_task(struct pid *pid, enum pid_type type) struct task_struct *result = NULL; if (pid) { struct hlist_node *first; - first = rcu_dereference_check(pid->tasks[type].first, + first = rcu_dereference_check(hlist_first_rcu(&pid->tasks[type]), rcu_read_lock_held() || lockdep_tasklist_lock_is_held()); if (first) @@ -416,6 +416,7 @@ EXPORT_SYMBOL(pid_task); */ struct task_struct *find_task_by_pid_ns(pid_t nr, struct pid_namespace *ns) { + rcu_lockdep_assert(rcu_read_lock_held()); return pid_task(find_pid_ns(nr, ns), PIDTYPE_PID); } |