summaryrefslogtreecommitdiffstats
path: root/kernel/cpuset.c
diff options
context:
space:
mode:
authorLi Zefan <lizefan@huawei.com>2013-08-13 04:05:59 +0200
committerTejun Heo <tj@kernel.org>2013-08-13 16:54:40 +0200
commita903f0865a190f8778c73df1a810ea6e25e5d7cf (patch)
treeaa0c88bb6e99dd163c541ef5d4f47a3fc5aa9932 /kernel/cpuset.c
parentcgroup: fix a leak when percpu_ref_init() fails (diff)
downloadlinux-a903f0865a190f8778c73df1a810ea6e25e5d7cf.tar.xz
linux-a903f0865a190f8778c73df1a810ea6e25e5d7cf.zip
cpuset: fix the return value of cpuset_write_u64()
Writing to this file always returns -ENODEV: # echo 1 > cpuset.memory_pressure_enabled -bash: echo: write error: No such device Signed-off-by: Li Zefan <lizefan@huawei.com> Cc: <stable@vger.kernel.org> # 3.9+ Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/cpuset.c')
-rw-r--r--kernel/cpuset.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index e5657788fedd..010a0083c0ae 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -1608,11 +1608,13 @@ static int cpuset_write_u64(struct cgroup *cgrp, struct cftype *cft, u64 val)
{
struct cpuset *cs = cgroup_cs(cgrp);
cpuset_filetype_t type = cft->private;
- int retval = -ENODEV;
+ int retval = 0;
mutex_lock(&cpuset_mutex);
- if (!is_cpuset_online(cs))
+ if (!is_cpuset_online(cs)) {
+ retval = -ENODEV;
goto out_unlock;
+ }
switch (type) {
case FILE_CPU_EXCLUSIVE: