On Fri, 28 Jan 2011 08:57:24 +0100 Johannes Weiner <hannes@xxxxxxxxxxx> wrote: > On Fri, Jan 28, 2011 at 12:26:08PM +0900, KAMEZAWA Hiroyuki wrote: > > From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > > > > When THP is used, Hugepage size charge can happen. It's not handled > > correctly in mem_cgroup_do_charge(). For example, THP can fallback > > to small page allocation when HUGEPAGE allocation seems difficult > > or busy, but memory cgroup doesn't understand it and continue to > > try HUGEPAGE charging. And the worst thing is memory cgroup > > believes 'memory reclaim succeeded' if limit - usage > PAGE_SIZE. > > > > By this, khugepaged etc...can goes into inifinite reclaim loop > > if tasks in memcg are busy. > > > > After this patch > > - Hugepage allocation will fail if 1st trial of page reclaim fails. > > > > Changelog: > > - make changes small. removed renaming codes. > > > > Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > > --- > > mm/memcontrol.c | 28 ++++++++++++++++++++++++---- > > 1 file changed, 24 insertions(+), 4 deletions(-) > > Was there something wrong with my oneline fix? > I thought your patch was against RHEL6. > Really, there is no way to make this a beautiful fix. The way this > function is split up makes no sense, and the constant addition of more > and more flags just to correctly communicate with _one callsite_ > should be an obvious hint. > Your version has to depend on oom_check flag to work fine. I think it's complicated. Thanks, -Kame -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>