proc: seqfile convert proc_pid_status to properly handle pid namespaces
Currently we possibly lookup the pid in the wrong pid namespace. So seq_file convert proc_pid_status which ensures the proper pid namespaces is passed in. [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: build fix] [akpm@linux-foundation.org: another build fix] [akpm@linux-foundation.org: s390 build fix] [akpm@linux-foundation.org: fix task_name() output] [akpm@linux-foundation.org: fix nommu build] Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Cc: Andrew Morgan <morgan@kernel.org> Cc: Serge Hallyn <serue@us.ibm.com> Cc: Cedric Le Goater <clg@fr.ibm.com> Cc: Pavel Emelyanov <xemul@openvz.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Paul Menage <menage@google.com> Cc: Paul Jackson <pj@sgi.com> Cc: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
a56d3fc74c
commit
df5f8314ca
@@ -2255,13 +2255,14 @@ const struct file_operations proc_cpuset_operations = {
|
||||
#endif /* CONFIG_PROC_PID_CPUSET */
|
||||
|
||||
/* Display task cpus_allowed, mems_allowed in /proc/<pid>/status file. */
|
||||
char *cpuset_task_status_allowed(struct task_struct *task, char *buffer)
|
||||
void cpuset_task_status_allowed(struct seq_file *m, struct task_struct *task)
|
||||
{
|
||||
buffer += sprintf(buffer, "Cpus_allowed:\t");
|
||||
buffer += cpumask_scnprintf(buffer, PAGE_SIZE, task->cpus_allowed);
|
||||
buffer += sprintf(buffer, "\n");
|
||||
buffer += sprintf(buffer, "Mems_allowed:\t");
|
||||
buffer += nodemask_scnprintf(buffer, PAGE_SIZE, task->mems_allowed);
|
||||
buffer += sprintf(buffer, "\n");
|
||||
return buffer;
|
||||
seq_printf(m, "Cpus_allowed:\t");
|
||||
m->count += cpumask_scnprintf(m->buf + m->count, m->size - m->count,
|
||||
task->cpus_allowed);
|
||||
seq_printf(m, "\n");
|
||||
seq_printf(m, "Mems_allowed:\t");
|
||||
m->count += nodemask_scnprintf(m->buf + m->count, m->size - m->count,
|
||||
task->mems_allowed);
|
||||
seq_printf(m, "\n");
|
||||
}
|
||||
|
Reference in New Issue
Block a user