lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 13 May 2014 12:46:19 -0400 From: Tejun Heo <tj@...nel.org> To: Michal Hocko <mhocko@...e.cz> Cc: lizefan@...wei.com, cgroups@...r.kernel.org, linux-kernel@...r.kernel.org, hannes@...xchg.org Subject: Re: [PATCH 02/14] cgroup: remove pointless has tasks/children test from mem_cgroup_force_empty() On Mon, May 12, 2014 at 04:53:24PM +0200, Michal Hocko wrote: > From 03f8cb2e1fd2636d859c54df9b58719fe96e0e54 Mon Sep 17 00:00:00 2001 > From: Michal Hocko <mhocko@...e.cz> > Date: Mon, 12 May 2014 16:34:17 +0200 > Subject: [PATCH] memcg: remove tasks/children test from from > mem_cgroup_force_empty > > Tejun has correctly pointed out that tasks/children test in > mem_cgroup_force_empty is not correct because there is no other locking > which preserves this state throughout the rest of the function so both > new tasks can join the group or new children groups can be added while > somebody is writing to memory.force_empty. A new task would break > mem_cgroup_reparent_charges expectation that all failures as described > by mem_cgroup_force_empty_list are temporal and there is no way out. > > The main use case for the knob as described by > Documentation/cgroups/memory.txt is to: > " > The typical use case for this interface is before calling rmdir(). > Because rmdir() moves all pages to parent, some out-of-use page caches can be > moved to the parent. If you want to avoid that, force_empty will be useful. > " > > This means that reparenting is not really required as rmdir will > reparent pages implicitly from the safe context. If we remove it from > mem_cgroup_force_empty then we are safe even with existing tasks because > the number of reclaim attempts is bounded. Moreover the knob still does > what the documentation claims (modulo reparenting which doesn't make any > difference) and users might expect. Longterm we want to deprecate the > whole knob and put the reparented pages to the tail of parent LRU during > cgroup removal. Replaced the original patch with this one with Johannes' ack added. Thanks! -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists