We can write whatever to memory.force_empty: echo 999 > memory.force_empty echo wow > memory.force_empty This is odd, so let's make '1' to be the only valid value. Signed-off-by: Li Zefan <lizf@xxxxxxxxxxxxxx> --- mm/memcontrol.c | 21 ++++++++++++--------- 1 files changed, 12 insertions(+), 9 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index eb681a6..6145031 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -868,15 +868,18 @@ static ssize_t mem_cgroup_write(struct cgroup *cont, struct cftype *cft, mem_cgroup_write_strategy); } -static ssize_t mem_force_empty_write(struct cgroup *cont, - struct cftype *cft, struct file *file, - const char __user *userbuf, - size_t nbytes, loff_t *ppos) +static int mem_force_empty_write(struct cgroup *cont, struct cftype *cft, + u64 val) { - struct mem_cgroup *mem = mem_cgroup_from_cont(cont); - int ret = mem_cgroup_force_empty(mem); - if (!ret) - ret = nbytes; + struct mem_cgroup *mem; + int ret; + + if (val != 1) + return -EINVAL; + + mem = mem_cgroup_from_cont(cont); + ret = mem_cgroup_force_empty(mem); + return ret; } @@ -935,7 +938,7 @@ static struct cftype mem_cgroup_files[] = { }, { .name = "force_empty", - .write = mem_force_empty_write, + .write_u64 = mem_force_empty_write, }, { .name = "stat", -- 1.5.4.rc3 _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers