aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/cpuset.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/cpuset.c')
-rw-r--r--kernel/cpuset.c24
1 files changed, 8 insertions, 16 deletions
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 22874d7cf2c0..1f107c74087b 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -365,13 +365,14 @@ static void cpuset_update_task_spread_flag(struct cpuset *cs,
365 struct task_struct *tsk) 365 struct task_struct *tsk)
366{ 366{
367 if (is_spread_page(cs)) 367 if (is_spread_page(cs))
368 tsk->flags |= PF_SPREAD_PAGE; 368 task_set_spread_page(tsk);
369 else 369 else
370 tsk->flags &= ~PF_SPREAD_PAGE; 370 task_clear_spread_page(tsk);
371
371 if (is_spread_slab(cs)) 372 if (is_spread_slab(cs))
372 tsk->flags |= PF_SPREAD_SLAB; 373 task_set_spread_slab(tsk);
373 else 374 else
374 tsk->flags &= ~PF_SPREAD_SLAB; 375 task_clear_spread_slab(tsk);
375} 376}
376 377
377/* 378/*
@@ -2729,10 +2730,9 @@ void __cpuset_memory_pressure_bump(void)
2729 * and we take cpuset_mutex, keeping cpuset_attach() from changing it 2730 * and we take cpuset_mutex, keeping cpuset_attach() from changing it
2730 * anyway. 2731 * anyway.
2731 */ 2732 */
2732int proc_cpuset_show(struct seq_file *m, void *unused_v) 2733int proc_cpuset_show(struct seq_file *m, struct pid_namespace *ns,
2734 struct pid *pid, struct task_struct *tsk)
2733{ 2735{
2734 struct pid *pid;
2735 struct task_struct *tsk;
2736 char *buf, *p; 2736 char *buf, *p;
2737 struct cgroup_subsys_state *css; 2737 struct cgroup_subsys_state *css;
2738 int retval; 2738 int retval;
@@ -2742,24 +2742,16 @@ int proc_cpuset_show(struct seq_file *m, void *unused_v)
2742 if (!buf) 2742 if (!buf)
2743 goto out; 2743 goto out;
2744 2744
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; 2745 retval = -ENAMETOOLONG;
2752 rcu_read_lock(); 2746 rcu_read_lock();
2753 css = task_css(tsk, cpuset_cgrp_id); 2747 css = task_css(tsk, cpuset_cgrp_id);
2754 p = cgroup_path(css->cgroup, buf, PATH_MAX); 2748 p = cgroup_path(css->cgroup, buf, PATH_MAX);
2755 rcu_read_unlock(); 2749 rcu_read_unlock();
2756 if (!p) 2750 if (!p)
2757 goto out_put_task; 2751 goto out_free;
2758 seq_puts(m, p); 2752 seq_puts(m, p);
2759 seq_putc(m, '\n'); 2753 seq_putc(m, '\n');
2760 retval = 0; 2754 retval = 0;
2761out_put_task:
2762 put_task_struct(tsk);
2763out_free: 2755out_free:
2764 kfree(buf); 2756 kfree(buf);
2765out: 2757out: