summary refs log tree commit diff
path: root/kernel/pid.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2010-02-25 16:55:13 +0100
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2010-08-19 17:18:00 -0700
commit67bdbffd696f29a0b68aa8daa285783a06651583 (patch)
tree1b3304e2fcc51e1aa8946d808b8f6f1d0cb3dbe1 /kernel/pid.c
parentca5ecddfa8fcbd948c95530e7e817cee9fb43a3d (diff)
downloadlinux-67bdbffd696f29a0b68aa8daa285783a06651583.tar.gz
rculist: avoid __rcu annotations
This avoids warnings from missing __rcu annotations
in the rculist implementation, making it possible to
use the same lists in both RCU and non-RCU cases.

We can add rculist annotations later, together with
lockdep support for rculist, which is missing as well,
but that may involve changing all the users.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Pavel Emelyanov <xemul@openvz.org>
Cc: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Diffstat (limited to 'kernel/pid.c')
-rw-r--r--kernel/pid.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/pid.c b/kernel/pid.c
index d55c6fb8d087..0f90c2f713f1 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)