Pavel Emelianov [EMAIL PROTECTED] wrote:
| diff -upr linux-2.6.23-rc1-mm1.orig/fs/proc/array.c 
| linux-2.6.23-rc1-mm1-7/fs/proc/array.c
| --- linux-2.6.23-rc1-mm1.orig/fs/proc/array.c 2007-07-26 
| 16:34:45.000000000 +0400
| +++ linux-2.6.23-rc1-mm1-7/fs/proc/array.c    2007-07-26 
| 16:36:36.000000000 +0400
| @@ -77,6 +77,7 @@
| #include <linux/cpuset.h>
| #include <linux/rcupdate.h>
| #include <linux/delayacct.h>
| +#include <linux/pid_namespace.h>
| 
| #include <asm/pgtable.h>
| #include <asm/processor.h>
| @@ -161,7 +162,9 @@ static inline char *task_state(struct ta
|       struct group_info *group_info;
|       int g;
|       struct fdtable *fdt = NULL;
| +     struct pid_namespace *ns;
| 
| +     ns = current->nsproxy->pid_ns;
|       rcu_read_lock();
|       buffer += sprintf(buffer,
|               "State:\t%s\n"
| @@ -172,9 +175,12 @@ static inline char *task_state(struct ta
|               "Uid:\t%d\t%d\t%d\t%d\n"
|               "Gid:\t%d\t%d\t%d\t%d\n",
|               get_task_state(p),
| -             p->tgid, p->pid,
| -             pid_alive(p) ? rcu_dereference(p->real_parent)->tgid : 0,
| -             pid_alive(p) && p->ptrace ? rcu_dereference(p->parent)->pid 
| : 0,
| +             task_tgid_nr_ns(p, ns),
| +             task_pid_nr_ns(p, ns),
| +             pid_alive(p) ?
| +                     task_ppid_nr_ns(p, ns) : 0,
| +             pid_alive(p) && p->ptrace ?
| +                     task_tgid_nr_ns(rcu_dereference(p->parent), ns) : 0,

Hmm. I think we have this reversed here. We should print the 'tgid' of
task->real_parent and 'pid' of task->parent.

_______________________________________________
Devel mailing list
[email protected]
https://openvz.org/mailman/listinfo/devel

Reply via email to