[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.00.1206210158360.10975@chino.kir.corp.google.com>
Date: Thu, 21 Jun 2012 02:01:44 -0700 (PDT)
From: David Rientjes <rientjes@...gle.com>
To: Minchan Kim <minchan@...nel.org>
cc: Andrew Morton <akpm@...ux-foundation.org>,
Mel Gorman <mgorman@...e.de>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>,
Rik van Riel <riel@...hat.com>, linux-kernel@...r.kernel.org,
linux-mm@...ck.org
Subject: Re: [patch] mm, thp: abort compaction if migration page cannot be
charged to memcg
On Thu, 21 Jun 2012, David Rientjes wrote:
> It's possible that subsequent pageblocks would contain memory allocated
> from solely non-oom memcgs, but it's certainly not a guarantee and results
> in terrible performance as exhibited above. Is there another good
> criteria to use when deciding when to stop isolating and attempting to
> migrate all of these pageblocks?
>
> Other ideas?
>
The only other alternative that I can think of is to check
mem_cgroup_margin() in isolate_migratepages_range() and return a NULL
lruvec that would break that pageblock and return, and then set a bit in
struct mem_cgroup that labels it as oom so we can check for it on
subsequent pageblocks without incurring the locking to do
mem_cgroup_margin() in res_counter, and then clear that bit on every
uncharge to a memcg, but this still seems like a tremendous waste of cpu
(especially if /sys/kernel/mm/transparent_hugepage/defrag == always) if
most pageblocks contain pages from an oom memcg.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists