]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
remove broken memcg patch from 3.0
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Nov 2012 02:56:40 +0000 (18:56 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Nov 2012 02:56:40 +0000 (18:56 -0800)
queue-3.0/memcg-oom-fix-totalpages-calculation-for-memory.swappiness-0.patch [deleted file]
queue-3.0/series

diff --git a/queue-3.0/memcg-oom-fix-totalpages-calculation-for-memory.swappiness-0.patch b/queue-3.0/memcg-oom-fix-totalpages-calculation-for-memory.swappiness-0.patch
deleted file mode 100644 (file)
index dbe3ec9..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-From 9a5a8f19b43430752067ecaee62fc59e11e88fa6 Mon Sep 17 00:00:00 2001
-From: Michal Hocko <mhocko@suse.cz>
-Date: Fri, 16 Nov 2012 14:14:49 -0800
-Subject: memcg: oom: fix totalpages calculation for memory.swappiness==0
-
-From: Michal Hocko <mhocko@suse.cz>
-
-commit 9a5a8f19b43430752067ecaee62fc59e11e88fa6 upstream.
-
-oom_badness() takes a totalpages argument which says how many pages are
-available and it uses it as a base for the score calculation.  The value
-is calculated by mem_cgroup_get_limit which considers both limit and
-total_swap_pages (resp.  memsw portion of it).
-
-This is usually correct but since fe35004fbf9e ("mm: avoid swapping out
-with swappiness==0") we do not swap when swappiness is 0 which means
-that we cannot really use up all the totalpages pages.  This in turn
-confuses oom score calculation if the memcg limit is much smaller than
-the available swap because the used memory (capped by the limit) is
-negligible comparing to totalpages so the resulting score is too small
-if adj!=0 (typically task with CAP_SYS_ADMIN or non zero oom_score_adj).
-A wrong process might be selected as result.
-
-The problem can be worked around by checking mem_cgroup_swappiness==0
-and not considering swap at all in such a case.
-
-Signed-off-by: Michal Hocko <mhocko@suse.cz>
-Acked-by: David Rientjes <rientjes@google.com>
-Acked-by: Johannes Weiner <hannes@cmpxchg.org>
-Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
-Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- Documentation/cgroups/memory.txt |    4 ++++
- mm/memcontrol.c                  |   21 +++++++++++++++------
- 2 files changed, 19 insertions(+), 6 deletions(-)
-
---- a/Documentation/cgroups/memory.txt
-+++ b/Documentation/cgroups/memory.txt
-@@ -441,6 +441,10 @@ Note:
- 5.3 swappiness
- Similar to /proc/sys/vm/swappiness, but affecting a hierarchy of groups only.
-+Please note that unlike the global swappiness, memcg knob set to 0
-+really prevents from any swapping even if there is a swap storage
-+available. This might lead to memcg OOM killer if there are no file
-+pages to reclaim.
- Following cgroups' swappiness can't be changed.
- - root cgroup (uses /proc/sys/vm/swappiness).
---- a/mm/memcontrol.c
-+++ b/mm/memcontrol.c
-@@ -1514,17 +1514,26 @@ static int mem_cgroup_count_children(str
- u64 mem_cgroup_get_limit(struct mem_cgroup *memcg)
- {
-       u64 limit;
--      u64 memsw;
-       limit = res_counter_read_u64(&memcg->res, RES_LIMIT);
--      limit += total_swap_pages << PAGE_SHIFT;
--      memsw = res_counter_read_u64(&memcg->memsw, RES_LIMIT);
-       /*
--       * If memsw is finite and limits the amount of swap space available
--       * to this memcg, return that limit.
-+       * Do not consider swap space if we cannot swap due to swappiness
-        */
--      return min(limit, memsw);
-+      if (mem_cgroup_swappiness(memcg)) {
-+              u64 memsw;
-+
-+              limit += total_swap_pages << PAGE_SHIFT;
-+              memsw = res_counter_read_u64(&memcg->memsw, RES_LIMIT);
-+
-+              /*
-+               * If memsw is finite and limits the amount of swap space
-+               * available to this memcg, return that limit.
-+               */
-+              limit = min(limit, memsw);
-+      }
-+
-+      return limit;
- }
- /*
index c0bb6a3b9a5e928b211bc4aff6f74e46c14dbd96..5e584897da7b598201969045f60c7992c7d85af7 100644 (file)
@@ -12,7 +12,6 @@ ubifs-introduce-categorized-lprops-counter.patch
 s390-gup-add-missing-task_size-check-to-get_user_pages_fast.patch
 usb-option-add-novatel-e362-and-dell-wireless-5800-usb-ids.patch
 usb-option-add-alcatel-x220-x500d-usb-ids.patch
-memcg-oom-fix-totalpages-calculation-for-memory.swappiness-0.patch
 wireless-allow-40-mhz-on-world-roaming-channels-12-13.patch
 m68k-fix-sigset_t-accessor-functions.patch
 ipv4-avoid-undefined-behavior-in-do_ip_setsockopt.patch