From e65dd4f2c1a506a870874b60d69d04bec3211c48 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 20 Nov 2012 18:56:40 -0800 Subject: [PATCH] remove broken memcg patch from 3.0 --- ...-calculation-for-memory.swappiness-0.patch | 88 ------------------- queue-3.0/series | 1 - 2 files changed, 89 deletions(-) delete mode 100644 queue-3.0/memcg-oom-fix-totalpages-calculation-for-memory.swappiness-0.patch 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 index dbe3ec9aa6d..00000000000 --- a/queue-3.0/memcg-oom-fix-totalpages-calculation-for-memory.swappiness-0.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 9a5a8f19b43430752067ecaee62fc59e11e88fa6 Mon Sep 17 00:00:00 2001 -From: Michal Hocko -Date: Fri, 16 Nov 2012 14:14:49 -0800 -Subject: memcg: oom: fix totalpages calculation for memory.swappiness==0 - -From: Michal Hocko - -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 -Acked-by: David Rientjes -Acked-by: Johannes Weiner -Acked-by: KOSAKI Motohiro -Acked-by: KAMEZAWA Hiroyuki -Signed-off-by: Andrew Morton -Signed-off-by: Linus Torvalds -Signed-off-by: Greg Kroah-Hartman - ---- - 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; - } - - /* diff --git a/queue-3.0/series b/queue-3.0/series index c0bb6a3b9a5..5e584897da7 100644 --- a/queue-3.0/series +++ b/queue-3.0/series @@ -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 -- 2.47.3