Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754838AbZJZHKi (ORCPT ); Mon, 26 Oct 2009 03:10:38 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754825AbZJZHKg (ORCPT ); Mon, 26 Oct 2009 03:10:36 -0400 Received: from smtp-out.google.com ([216.239.33.17]:47532 "EHLO smtp-out.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754752AbZJZHKd (ORCPT ); Mon, 26 Oct 2009 03:10:33 -0400 DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=date:from:x-x-sender:to:cc:subject:in-reply-to:message-id: references:user-agent:mime-version:content-type:x-system-of-record; b=QVWhE2gei+v/ryDsiDYzJHxme3dqXUwgQXMpRwGwpE2/r20hwR+lJZu9EJQfuXB6N hmr4dCXoC082uNhm0EppA== Date: Mon, 26 Oct 2009 00:10:25 -0700 (PDT) From: David Rientjes X-X-Sender: rientjes@chino.kir.corp.google.com To: KOSAKI Motohiro cc: Mel Gorman , Frans Pop , Jiri Kosina , Sven Geggus , Karol Lewandowski , Tobias Oetiker , "Rafael J. Wysocki" , David Miller , Reinette Chatre , Kalle Valo , Mohamed Abbas , Jens Axboe , "John W. Linville" , Pekka Enberg , Bartlomiej Zolnierkiewicz , Greg Kroah-Hartman , Stephan von Krawczynski , Kernel Testers List , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "linux-mm@kvack.org\"" Subject: Re: [PATCH 1/5] page allocator: Always wake kswapd when restarting an allocation attempt after direct reclaim failed In-Reply-To: <20091026100019.2F4A.A69D9226@jp.fujitsu.com> Message-ID: References: <1256221356-26049-1-git-send-email-mel@csn.ul.ie> <1256221356-26049-2-git-send-email-mel@csn.ul.ie> <20091026100019.2F4A.A69D9226@jp.fujitsu.com> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-System-Of-Record: true Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 969 Lines: 27 On Mon, 26 Oct 2009, KOSAKI Motohiro wrote: > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index bf72055..5a27896 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -1899,6 +1899,12 @@ rebalance: > if (should_alloc_retry(gfp_mask, order, pages_reclaimed)) { > /* Wait for some write requests to complete then retry */ > congestion_wait(BLK_RW_ASYNC, HZ/50); > + > + /* > + * While we wait congestion wait, Amount of free memory can > + * be changed dramatically. Thus, we kick kswapd again. > + */ > + wake_all_kswapd(order, zonelist, high_zoneidx); > goto rebalance; > } > We're blocking to finish writeback of the directly reclaimed memory, why do we need to wake kswapd afterwards? -- 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/