diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-03-09 02:17:32 -0500 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-03-09 02:17:32 -0500 |
| commit | ce67eef6a112bb283c6db39f9195800f31f5599a (patch) | |
| tree | 34f2e7fbd0b9838abba482dbb1a7db09e6fbb53c /kernel/pid.c | |
| parent | 776943fd6f104a6e8457dc95a17282e69e963666 (diff) | |
| parent | 57d54889cd00db2752994b389ba714138652e60c (diff) | |
Merge commit 'v2.6.34-rc1' into for-linus
Diffstat (limited to 'kernel/pid.c')
| -rw-r--r-- | kernel/pid.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/pid.c b/kernel/pid.c index 2e17c9c92cbe..86b296943e5f 100644 --- a/kernel/pid.c +++ b/kernel/pid.c | |||
| @@ -367,7 +367,7 @@ struct task_struct *pid_task(struct pid *pid, enum pid_type type) | |||
| 367 | struct task_struct *result = NULL; | 367 | struct task_struct *result = NULL; |
| 368 | if (pid) { | 368 | if (pid) { |
| 369 | struct hlist_node *first; | 369 | struct hlist_node *first; |
| 370 | first = rcu_dereference(pid->tasks[type].first); | 370 | first = rcu_dereference_check(pid->tasks[type].first, rcu_read_lock_held() || lockdep_is_held(&tasklist_lock)); |
| 371 | if (first) | 371 | if (first) |
| 372 | result = hlist_entry(first, struct task_struct, pids[(type)].node); | 372 | result = hlist_entry(first, struct task_struct, pids[(type)].node); |
| 373 | } | 373 | } |
| @@ -376,7 +376,7 @@ struct task_struct *pid_task(struct pid *pid, enum pid_type type) | |||
| 376 | EXPORT_SYMBOL(pid_task); | 376 | EXPORT_SYMBOL(pid_task); |
| 377 | 377 | ||
| 378 | /* | 378 | /* |
| 379 | * Must be called under rcu_read_lock() or with tasklist_lock read-held. | 379 | * Must be called under rcu_read_lock(). |
| 380 | */ | 380 | */ |
| 381 | struct task_struct *find_task_by_pid_ns(pid_t nr, struct pid_namespace *ns) | 381 | struct task_struct *find_task_by_pid_ns(pid_t nr, struct pid_namespace *ns) |
| 382 | { | 382 | { |
