Fwd: [patch 22/27] quicklist: Set tlb->need_flush if pages are remaining in quicklist 0

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Oliver Pinter
Date: Saturday, February 9, 2008 - 8:14 am

for 2.6.22

---------- Forwarded message ----------
From: Oliver Pinter <oliver.pntr@gmail.com>
Date: Thu, 7 Feb 2008 00:11:58 +0100
Subject: Re: [patch 22/27] quicklist: Set tlb->need_flush if pages are
remaining in quicklist 0
To: Greg KH <greg@kroah.com>
Cc: Christoph Lameter <clameter@sgi.com>, "Justin M. Forbes"
<jmforbes@linuxtx.org>, Greg KH <gregkh@suse.de>,
linux-kernel@vger.kernel.org, stable@kernel.org,
torvalds@linux-foundation.org, Zwane Mwaikambo
<zwane@arm.linux.org.uk>, Theodore Ts'o <tytso@mit.edu>, Randy Dunlap
<rdunlap@xenotime.net>, Dave Jones <davej@redhat.com>, Chuck Wolber
<chuckw@quantumlinux.com>, Chris Wedgwood <reviews@ml.cw.f00f.org>,
Michael Krufky <mkrufky@linuxtv.org>, Chuck Ebbert
<cebbert@redhat.com>, Domenico Andreoli <cavokz@gmail.com>,
akpm@linux-foundation.org, alan@lxorguk.ukuu.org.uk,
dhaval@linux.vnet.ibm.com

Greg, the patch in queue-2.6.23 is good for it

but the git id.: 96990a4ae979df9e235d01097d6175759331e88c

-------

From stable-bounces@linux.kernel.org Tue Jan 15 10:52:21 2008
From: Christoph Lameter <clameter@sgi.com>
Date: Wed, 16 Jan 2008 00:21:19 +0530
Subject: quicklists: Only consider memory that can be used with GFP_KERNEL
To: gregkh@suse.de
Cc: Andrew Morton <akpm@linux-foundation.org>, stable@kernel.org,
clameter@sgi.com
Message-ID: <20080115185119.GA6806@linux.vnet.ibm.com>
Content-Disposition: inline

From: Christoph Lameter <clameter@sgi.com>

patch 96990a4ae979df9e235d01097d6175759331e88c in mainline.

Quicklists calculates the size of the quicklists based on the number of
free pages.  This must be the number of free pages that can be allocated
with GFP_KERNEL.  node_page_state() includes the pages in ZONE_HIGHMEM and
ZONE_MOVABLE which may lead the quicklists to become too large causing OOM.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Tested-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

---
 mm/quicklist.c |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

--- a/mm/quicklist.c
+++ b/mm/quicklist.c
@@ -26,9 +26,17 @@ DEFINE_PER_CPU(struct quicklist, quickli
 static unsigned long max_pages(unsigned long min_pages)
 {
 	unsigned long node_free_pages, max;
+	struct zone *zones = NODE_DATA(numa_node_id())->node_zones;
+
+	node_free_pages =
+#ifdef CONFIG_ZONE_DMA
+		zone_page_state(&zones[ZONE_DMA], NR_FREE_PAGES) +
+#endif
+#ifdef CONFIG_ZONE_DMA32
+		zone_page_state(&zones[ZONE_DMA32], NR_FREE_PAGES) +
+#endif
+		zone_page_state(&zones[ZONE_NORMAL], NR_FREE_PAGES);

-	node_free_pages = node_page_state(numa_node_id(),
-			NR_FREE_PAGES);
 	max = node_free_pages / FRACTION_OF_NODE_MEM;
 	return max(max, min_pages);
 }



On 2/6/08, Greg KH <greg@kroah.com> wrote:


-- 
Thanks,
Oliver



-- 
Thanks,
Oliver
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[patch 00/27] 2.6.22-stable review, Greg KH, (Fri Feb 1, 5:19 pm)
[patch 01/27] X25: Add missing x25_neigh_put, Greg KH, (Fri Feb 1, 5:19 pm)
[patch 17/27] CASSINI: Fix endianness bug., Greg KH, (Fri Feb 1, 5:20 pm)
[patch 23/27] cxgb: fix T2 GSO, Greg KH, (Fri Feb 1, 5:21 pm)
[patch 24/27] cxgb: fix stats, Greg KH, (Fri Feb 1, 5:21 pm)
[patch 25/27] chelsio: Fix skb-&gt;dev setting, Greg KH, (Fri Feb 1, 5:21 pm)
Re: [patch 00/27] 2.6.22-stable review, Arkadiusz Miskiewicz, (Sat Feb 2, 11:55 am)
[patch 00/27] 2.6.22-stable review, Oliver Pinter (Pinté ..., (Mon Feb 4, 10:30 am)
Re: [patch 00/27] 2.6.22-stable review, Greg KH, (Mon Feb 4, 10:59 am)
Fwd: [patch 22/27] quicklist: Set tlb->need_flush if pages ..., Oliver Pinter, (Sat Feb 9, 8:14 am)