|
@@ -183,7 +183,7 @@ static int fill_pid(pid_t pid, struct task_struct *tsk,
|
|
|
|
|
|
if (!tsk) {
|
|
|
rcu_read_lock();
|
|
|
- tsk = find_task_by_pid(pid);
|
|
|
+ tsk = find_task_by_vpid(pid);
|
|
|
if (tsk)
|
|
|
get_task_struct(tsk);
|
|
|
rcu_read_unlock();
|
|
@@ -230,7 +230,7 @@ static int fill_tgid(pid_t tgid, struct task_struct *first,
|
|
|
*/
|
|
|
rcu_read_lock();
|
|
|
if (!first)
|
|
|
- first = find_task_by_pid(tgid);
|
|
|
+ first = find_task_by_vpid(tgid);
|
|
|
|
|
|
if (!first || !lock_task_sighand(first, &flags))
|
|
|
goto out;
|
|
@@ -547,7 +547,7 @@ void taskstats_exit(struct task_struct *tsk, int group_dead)
|
|
|
if (!stats)
|
|
|
goto err;
|
|
|
|
|
|
- rc = fill_pid(tsk->pid, tsk, stats);
|
|
|
+ rc = fill_pid(-1, tsk, stats);
|
|
|
if (rc < 0)
|
|
|
goto err;
|
|
|
|