Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753101Ab0LAHka (ORCPT ); Wed, 1 Dec 2010 02:40:30 -0500 Received: from mga09.intel.com ([134.134.136.24]:16253 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752592Ab0LAHk3 (ORCPT ); Wed, 1 Dec 2010 02:40:29 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.59,282,1288594800"; d="scan'208";a="682671080" Subject: Re: [PATCH 1/3] mm: kswapd: Stop high-order balancing when any suitable zone is balanced From: Shaohua Li To: KOSAKI Motohiro Cc: Mel Gorman , Simon Kirby , Dave Hansen , linux-mm , linux-kernel In-Reply-To: <20101201122638.ABBF.A69D9226@jp.fujitsu.com> References: <20101201115401.ABB1.A69D9226@jp.fujitsu.com> <1291173628.12777.65.camel@sli10-conroe> <20101201122638.ABBF.A69D9226@jp.fujitsu.com> Content-Type: text/plain; charset="UTF-8" Date: Wed, 01 Dec 2010 15:40:27 +0800 Message-ID: <1291189227.12777.79.camel@sli10-conroe> Mime-Version: 1.0 X-Mailer: Evolution 2.30.3 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2772 Lines: 46 On Wed, 2010-12-01 at 11:28 +0800, KOSAKI Motohiro wrote: > > On Wed, 2010-12-01 at 10:59 +0800, KOSAKI Motohiro wrote: > > > > On Wed, 2010-12-01 at 10:23 +0800, KOSAKI Motohiro wrote: > > > > > > 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. > > > > yes, it improves a lot, but still possible for small systems. > > > > > > Ok, I got you. so please define your "small systems" word? > > an embedded system with less memory memory, obviously > > Typical embedded system don't have multiple zone. It's not obvious. IIRC, ARM supports highmem. But you are right, slub doen't allocate from highmem. > > > we can't make > > > perfect VM heuristics obviously, then we need to compare pros/cons. > > if you don't care about small system, let's consider a NORMAL i386 > > system with 896m normal zone, and 896M*3 high zone. normal zone will > > quickly exhaust by high order high zone allocation, leave a latter > > allocation which does need normal zone fail. > > Not happen. slab don't allocate from highmem and page cache allocation > is always using order-0. When happen high order high zone allocation? ok, thanks, I missed this. then how about a x86_64 box with 896M DMA32 and 896*3M NORMAL? some pci devices can only dma to DMA32 zone. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/