aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@sgi.com>2007-12-22 17:03:23 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-12-23 15:54:36 -0500
commited367fc3a7349b17354c7acef551533337764859 (patch)
tree90f795da9aa2165be7cffd776822712e5fc4ad56
parent5b825ed22b02691e39774e8b2a077d1807969ec7 (diff)
quicklists: do not release off node pages early
quicklists must keep even off node pages on the quicklists until the TLB flush has been completed. Signed-off-by: Christoph Lameter <clameter@sgi.com> Cc: Dhaval Giani <dhaval@linux.vnet.ibm.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/linux/quicklist.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/include/linux/quicklist.h b/include/linux/quicklist.h
index 9371c6116df3..39b66713a0bb 100644
--- a/include/linux/quicklist.h
+++ b/include/linux/quicklist.h
@@ -56,14 +56,6 @@ static inline void __quicklist_free(int nr, void (*dtor)(void *), void *p,
56 struct page *page) 56 struct page *page)
57{ 57{
58 struct quicklist *q; 58 struct quicklist *q;
59 int nid = page_to_nid(page);
60
61 if (unlikely(nid != numa_node_id())) {
62 if (dtor)
63 dtor(p);
64 __free_page(page);
65 return;
66 }
67 59
68 q = &get_cpu_var(quicklist)[nr]; 60 q = &get_cpu_var(quicklist)[nr];
69 *(void **)p = q->page; 61 *(void **)p = q->page;