Commit d01d4827858cdc2e1c437c87ab65ec0a00fd40f8

Authored by Heiko Carstens
Committed by Ingo Molnar
1 parent 0d721ceadb

sched: Always show Cpus_allowed field in /proc/<pid>/status

The Cpus_allowed fields in /proc/<pid>/status is currently only
shown in case of CONFIG_CPUSETS. However their contents are also
useful for the !CONFIG_CPUSETS case.

So change the current behaviour and always show these fields.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <20090921090627.GD4649@osiris.boeblingen.de.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

Showing 2 changed files with 12 additions and 7 deletions Side-by-side Diff

... ... @@ -321,6 +321,16 @@
321 321 p->nivcsw);
322 322 }
323 323  
  324 +static void task_cpus_allowed(struct seq_file *m, struct task_struct *task)
  325 +{
  326 + seq_printf(m, "Cpus_allowed:\t");
  327 + seq_cpumask(m, &task->cpus_allowed);
  328 + seq_printf(m, "\n");
  329 + seq_printf(m, "Cpus_allowed_list:\t");
  330 + seq_cpumask_list(m, &task->cpus_allowed);
  331 + seq_printf(m, "\n");
  332 +}
  333 +
324 334 int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
325 335 struct pid *pid, struct task_struct *task)
326 336 {
... ... @@ -335,6 +345,7 @@
335 345 }
336 346 task_sig(m, task);
337 347 task_cap(m, task);
  348 + task_cpus_allowed(m, task);
338 349 cpuset_task_status_allowed(m, task);
339 350 #if defined(CONFIG_S390)
340 351 task_show_regs(m, task);
... ... @@ -2499,15 +2499,9 @@
2499 2499 };
2500 2500 #endif /* CONFIG_PROC_PID_CPUSET */
2501 2501  
2502   -/* Display task cpus_allowed, mems_allowed in /proc/<pid>/status file. */
  2502 +/* Display task mems_allowed in /proc/<pid>/status file. */
2503 2503 void cpuset_task_status_allowed(struct seq_file *m, struct task_struct *task)
2504 2504 {
2505   - seq_printf(m, "Cpus_allowed:\t");
2506   - seq_cpumask(m, &task->cpus_allowed);
2507   - seq_printf(m, "\n");
2508   - seq_printf(m, "Cpus_allowed_list:\t");
2509   - seq_cpumask_list(m, &task->cpus_allowed);
2510   - seq_printf(m, "\n");
2511 2505 seq_printf(m, "Mems_allowed:\t");
2512 2506 seq_nodemask(m, &task->mems_allowed);
2513 2507 seq_printf(m, "\n");