diff options
| author | Glauber Costa <[email protected]> | 2012-05-29 15:07:10 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2012-05-29 16:22:28 -0700 |
| commit | 3afe36b1fe7d1e3f66752bb9548a763942f3a104 (patch) | |
| tree | 7cb138ee742517f2924c1cbc1ae18c4d6afab12b /lib/mpi/mpi-gcd.c | |
| parent | fa9add641b1b1c564db916accac1db346e7a2759 (diff) | |
memcg: always free struct memcg through schedule_work()
Right now we free struct memcg with kfree right after a rcu grace period,
but defer it if we need to use vfree() to get rid of that memory area. We
do that by need, because we need vfree to be called in a process context.
This patch unifies this behavior, by ensuring that even kfree will happen
in a separate thread. The goal is to have a stable place to call the
upcoming jump label destruction function outside the realm of the
complicated and quite far-reaching cgroup lock (that can't be held when
holding either the cpu_hotplug.lock or jump_label_mutex)
[[email protected]: tweak comment]
Signed-off-by: Glauber Costa <[email protected]>
Cc: Tejun Heo <[email protected]>
Cc: Li Zefan <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Cc: Johannes Weiner <[email protected]>
Acked-by: Michal Hocko <[email protected]>
Cc: David Miller <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'lib/mpi/mpi-gcd.c')
0 files changed, 0 insertions, 0 deletions