From: "Oliver Pinter" <oliver.pntr@gmail.com>
To: "Linux Kernel" <linux-kernel@vger.kernel.org>,
stable@kernel.org, stable-commits@vger.kernel.org
Cc: "Oliver Pinter" <oliver.pntr@gmail.com>,
"Adrian Bunk" <bunk@kernel.org>, "Greg KH" <gregkh@suse.de>,
"Justin Forbes" <jmforbes@linuxtx.org>,
"Zwane Mwaikambo" <zwane@arm.linux.org.uk>,
"Theodore Ts'o" <tytso@mit.edu>,
"Randy. Dunlap" <rdunlap@xenotime.net>,
"Chuck Wolber" <chuckw@quantumlinux.com>,
"Dave Jones" <davej@redhat.com>,
"Chris Wedgwood" <reviews@ml.cw.f00f.org>,
"Michael Krufky" <mkrufky@linuxtv.org>,
"Chuck Ebbert" <cebbert@redhat.com>,
"Domenico Andreoli" <cavokz@gmail.com>,
"Christoph Lameter" <clameter@sgi.com>,
"Dhaval Giani" <dhaval@linux.vnet.ibm.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"chrisw@sous-sol.org" <chrisw@sous-sol.org>
Subject: [2.6.22.y #2] quicklists: Only consider memory that can be used with GFP_KERNEL
Date: Mon, 18 Feb 2008 21:01:11 +0100 [thread overview]
Message-ID: <6101e8c40802181201o4e997b4w1525281ec93072e1@mail.gmail.com> (raw)
In-Reply-To: <6101e8c40802170918x69a98d96n6c13e2c23f28acfb@mail.gmail.com>
From fcae8056673aa7b5b55d669fe5255ae76a93ae53 Mon Sep 17 00:00:00 2001
From: Christoph Lameter <clameter@sgi.com>
Date: Wed, 16 Jan 2008 00:21:19 +0530
Subject: [PATCH] quicklists: Only consider memory that can be used
with GFP_KERNEL
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>
Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
diff --git a/mm/quicklist.c b/mm/quicklist.c
index ae8189c..3f703f7 100644
--- a/mm/quicklist.c
+++ b/mm/quicklist.c
@@ -26,9 +26,17 @@ DEFINE_PER_CPU(struct quicklist,
quicklist)[CONFIG_NR_QUICK];
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);
}
--
Thanks,
Oliver
parent reply other threads:[~2008-02-18 20:01 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <6101e8c40802170918x69a98d96n6c13e2c23f28acfb@mail.gmail.com>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6101e8c40802181201o4e997b4w1525281ec93072e1@mail.gmail.com \
--to=oliver.pntr@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=bunk@kernel.org \
--cc=cavokz@gmail.com \
--cc=cebbert@redhat.com \
--cc=chrisw@sous-sol.org \
--cc=chuckw@quantumlinux.com \
--cc=clameter@sgi.com \
--cc=davej@redhat.com \
--cc=dhaval@linux.vnet.ibm.com \
--cc=gregkh@suse.de \
--cc=jmforbes@linuxtx.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mkrufky@linuxtv.org \
--cc=rdunlap@xenotime.net \
--cc=reviews@ml.cw.f00f.org \
--cc=stable-commits@vger.kernel.org \
--cc=stable@kernel.org \
--cc=tytso@mit.edu \
--cc=zwane@arm.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®