aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/cpuset.c
diff options
context:
space:
mode:
authorZefan Li <lizefan@huawei.com>2014-09-18 04:03:36 -0400
committerTejun Heo <tj@kernel.org>2014-09-18 13:27:23 -0400
commit52de4779f201758ddcf37360f09a16895756e708 (patch)
tree4817eb47aebdd04ecaa03956f69d7f5a60291a57 /kernel/cpuset.c
parent006f4ac49742b5f70ef7e39176fd42a500144ccc (diff)
cpuset: simplify proc_cpuset_show()
Use the ONE macro instead of REG, and we can simplify proc_cpuset_show(). Signed-off-by: Zefan Li <lizefan@huawei.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/cpuset.c')
-rw-r--r--kernel/cpuset.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 22874d7cf2c0..a37f4ed24867 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -2729,10 +2729,9 @@ void __cpuset_memory_pressure_bump(void)
2729 * and we take cpuset_mutex, keeping cpuset_attach() from changing it 2729 * and we take cpuset_mutex, keeping cpuset_attach() from changing it
2730 * anyway. 2730 * anyway.
2731 */ 2731 */
2732int proc_cpuset_show(struct seq_file *m, void *unused_v) 2732int proc_cpuset_show(struct seq_file *m, struct pid_namespace *ns,
2733 struct pid *pid, struct task_struct *tsk)
2733{ 2734{
2734 struct pid *pid;
2735 struct task_struct *tsk;
2736 char *buf, *p; 2735 char *buf, *p;
2737 struct cgroup_subsys_state *css; 2736 struct cgroup_subsys_state *css;
2738 int retval; 2737 int retval;
@@ -2742,24 +2741,16 @@ int proc_cpuset_show(struct seq_file *m, void *unused_v)
2742 if (!buf) 2741 if (!buf)
2743 goto out; 2742 goto out;
2744 2743
2745 retval = -ESRCH;
2746 pid = m->private;
2747 tsk = get_pid_task(pid, PIDTYPE_PID);
2748 if (!tsk)
2749 goto out_free;
2750
2751 retval = -ENAMETOOLONG; 2744 retval = -ENAMETOOLONG;
2752 rcu_read_lock(); 2745 rcu_read_lock();
2753 css = task_css(tsk, cpuset_cgrp_id); 2746 css = task_css(tsk, cpuset_cgrp_id);
2754 p = cgroup_path(css->cgroup, buf, PATH_MAX); 2747 p = cgroup_path(css->cgroup, buf, PATH_MAX);
2755 rcu_read_unlock(); 2748 rcu_read_unlock();
2756 if (!p) 2749 if (!p)
2757 goto out_put_task; 2750 goto out_free;
2758 seq_puts(m, p); 2751 seq_puts(m, p);
2759 seq_putc(m, '\n'); 2752 seq_putc(m, '\n');
2760 retval = 0; 2753 retval = 0;
2761out_put_task:
2762 put_task_struct(tsk);
2763out_free: 2754out_free:
2764 kfree(buf); 2755 kfree(buf);
2765out: 2756out: