All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] oom: handle overflow in mem_cgroup_out_of_memory()
@ 2011-01-26  8:29 ` Greg Thelen
  0 siblings, 0 replies; 34+ messages in thread
From: Greg Thelen @ 2011-01-26  8:29 UTC (permalink / raw)
  To: Andrew Morton
  Cc: David Rientjes, KOSAKI Motohiro, Minchan Kim, KAMEZAWA Hiroyuki,
	linux-mm, linux-kernel, Greg Thelen

mem_cgroup_get_limit() returns a byte limit as a unsigned 64 bit value,
which is converted to a page count by mem_cgroup_out_of_memory().  Prior
to this patch the conversion could overflow on 32 bit platforms
yielding a limit of zero.

Signed-off-by: Greg Thelen <gthelen@google.com>
---
 mm/oom_kill.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mm/oom_kill.c b/mm/oom_kill.c
index 7dcca55..3fcac51 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
@@ -538,7 +538,7 @@ void mem_cgroup_out_of_memory(struct mem_cgroup *mem, gfp_t gfp_mask)
 	struct task_struct *p;
 
 	check_panic_on_oom(CONSTRAINT_MEMCG, gfp_mask, 0, NULL);
-	limit = mem_cgroup_get_limit(mem) >> PAGE_SHIFT;
+	limit = min(mem_cgroup_get_limit(mem) >> PAGE_SHIFT, (u64)ULONG_MAX);
 	read_lock(&tasklist_lock);
 retry:
 	p = select_bad_process(&points, limit, mem, NULL);
-- 
1.7.3.1


^ permalink raw reply related	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2011-01-27  2:19 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-26  8:29 [PATCH] oom: handle overflow in mem_cgroup_out_of_memory() Greg Thelen
2011-01-26  8:29 ` Greg Thelen
2011-01-26 13:40 ` Balbir Singh
2011-01-26 13:40   ` Balbir Singh
2011-01-26 17:07 ` Johannes Weiner
2011-01-26 17:07   ` Johannes Weiner
2011-01-26 17:33   ` Greg Thelen
2011-01-26 17:33     ` Greg Thelen
2011-01-26 18:30     ` Johannes Weiner
2011-01-26 18:30       ` Johannes Weiner
2011-01-26 20:32       ` Greg Thelen
2011-01-26 20:32         ` Greg Thelen
2011-01-26 22:29         ` Andrew Morton
2011-01-26 22:29           ` Andrew Morton
2011-01-27  0:24           ` KAMEZAWA Hiroyuki
2011-01-27  0:24             ` KAMEZAWA Hiroyuki
2011-01-27  0:53             ` [BUGFIX] memcg: fix res_counter_read_u64 lock aware (Was " KAMEZAWA Hiroyuki
2011-01-27  0:53               ` KAMEZAWA Hiroyuki
2011-01-27  1:08               ` Andrew Morton
2011-01-27  1:08                 ` Andrew Morton
2011-01-27  1:24                 ` KAMEZAWA Hiroyuki
2011-01-27  1:24                   ` KAMEZAWA Hiroyuki
2011-01-27  1:34                 ` KAMEZAWA Hiroyuki
2011-01-27  1:34                   ` KAMEZAWA Hiroyuki
2011-01-27  1:55                   ` Andrew Morton
2011-01-27  1:55                     ` Andrew Morton
2011-01-27  1:43               ` [BUGFIX v2] " KAMEZAWA Hiroyuki
2011-01-27  1:43                 ` KAMEZAWA Hiroyuki
2011-01-27  1:57                 ` Andrew Morton
2011-01-27  1:57                   ` Andrew Morton
2011-01-27  2:13                   ` KAMEZAWA Hiroyuki
2011-01-27  2:13                     ` KAMEZAWA Hiroyuki
2011-01-27  0:40     ` KAMEZAWA Hiroyuki
2011-01-27  0:40       ` KAMEZAWA Hiroyuki

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.