Messages in this thread | | | Date | Tue, 14 Dec 2010 14:33:06 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 1/6] mm: kswapd: Stop high-order balancing when any suitable zone is balanced |
| |
On Fri, 10 Dec 2010 15:46:20 +0000 Mel Gorman <mel@csn.ul.ie> wrote:
> When the allocator enters its slow path, kswapd is woken up to balance the > node. It continues working until all zones within the node are balanced. For > order-0 allocations, this makes perfect sense but for higher orders it can > have unintended side-effects. If the zone sizes are imbalanced, kswapd may > reclaim heavily within a smaller zone discarding an excessive number of > pages.
Why was it doing this?
> The user-visible behaviour is that kswapd is awake and reclaiming > even though plenty of pages are free from a suitable zone.
Suitable for what? I assume you refer to a future allocation which can be satisfied from more than one of the zones?
But what if that allocation wanted to allocate a high-order page from a zone which we just abandoned?
> This patch alters the "balance" logic for high-order reclaim allowing kswapd > to stop if any suitable zone becomes balanced to reduce the number of pages
again, suitable for what?
> it reclaims from other zones. kswapd still tries to ensure that order-0 > watermarks for all zones are met before sleeping.
Handling order-0 pages differently from higher-order pages sounds weird and wrong.
I don't think I understand this patch.
| |