procfs: Print task uids and gids in the userns that opened the proc file

Instead of using current_userns() use the userns of the opener
of the file so that if the file is passed between processes
the contents of the file do not change.

Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
This commit is contained in:
Eric W. Biederman 2012-08-11 12:38:26 -07:00
parent b2e0d98705
commit e9f238c304

View File

@ -162,7 +162,7 @@ static inline const char *get_task_state(struct task_struct *tsk)
static inline void task_state(struct seq_file *m, struct pid_namespace *ns, static inline void task_state(struct seq_file *m, struct pid_namespace *ns,
struct pid *pid, struct task_struct *p) struct pid *pid, struct task_struct *p)
{ {
struct user_namespace *user_ns = current_user_ns(); struct user_namespace *user_ns = seq_user_ns(m);
struct group_info *group_info; struct group_info *group_info;
int g; int g;
struct fdtable *fdt = NULL; struct fdtable *fdt = NULL;