From: "Eric W. Biederman" As we stop storing pid_t's and move to storing struct pid *. We need a way to get the pid_t from the struct pid to report to user space what we have stored. Having a clean well defined way to do this is especially important as we move to multiple pid spaces as may need to report a different value to the caller depending on which pid space the caller is in. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton --- include/linux/pid.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff -puN include/linux/pid.h~pid-implement-pid_nr include/linux/pid.h --- a/include/linux/pid.h~pid-implement-pid_nr +++ a/include/linux/pid.h @@ -94,6 +94,14 @@ extern struct pid *find_ge_pid(int nr); extern struct pid *alloc_pid(void); extern void FASTCALL(free_pid(struct pid *pid)); +static inline pid_t pid_nr(struct pid *pid) +{ + pid_t nr = 0; + if (pid) + nr = pid->nr; + return nr; +} + #define pid_next(task, type) \ ((task)->pids[(type)].node.next) _