Messages in this thread | ![/](/images/icornerl.gif) | | From | KOSAKI Motohiro <> | Subject | Re: [PATCH 1/3] mm: kswapd: Stop high-order balancing when any suitable zone is balanced | Date | Wed, 1 Dec 2010 11:23:11 +0900 (JST) |
| |
> On Wed, 2010-12-01 at 01:15 +0800, Mel Gorman 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 on a smaller zone discarding an excessive number of > > pages. The user-visible behaviour is that kswapd is awake and reclaiming > > even though plenty of pages are free from a suitable zone. > > > > This patch alters the "balance" logic to stop kswapd if any suitable zone > > becomes balanced to reduce the number of pages it reclaims from other zones. > from my understanding, the patch will break reclaim high zone if a low > zone meets the high order allocation, even the high zone doesn't meet > the high order allocation. This, for example, will make a high order > allocation from a high zone fallback to low zone and quickly exhaust low > zone, for example DMA. This will break some drivers.
Have you seen patch [3/3]? I think it migigate your pointed issue.
| ![\](/images/icornerr.gif) |