summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Hicks <mort@sgi.com>2005-04-26 09:04:31 -0700
committerTony Luck <aegl@agluck-lia64.sc.intel.com>2005-04-26 09:04:31 -0700
commit2d29306b231a1a0e7a70166c10e4c0f917b21334 (patch)
treeebbf8240386b01a78a7c2fc7de307184580e8208
parent605036cf8443b9172b24954dc1fd218e2049f91b (diff)
downloadlinux-2d29306b231a1a0e7a70166c10e4c0f917b21334.tar.bz2
[IA64] re-enable preempt before page allocation for pgtable quicklist
This is a fix to the pgtable_quicklist code. There is a GFP_KERNEL allocation in pgtable_quicklist_alloc(), which spews the usual warnings if the kernel is under heavy VM pressure and the reclaim code is invoked. re-enable preempt before we allocate the new page. This patch is against 2.6.12-rc2-mm2 Signed-off-by: Martin Hicks <mort@sgi.com> Signed-off-by: Tony Luck <tony.luckintel.com>
-rw-r--r--include/asm-ia64/pgalloc.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-ia64/pgalloc.h b/include/asm-ia64/pgalloc.h
index 2b7127330ae1..a5f214554afd 100644
--- a/include/asm-ia64/pgalloc.h
+++ b/include/asm-ia64/pgalloc.h
@@ -49,12 +49,12 @@ static inline void *pgtable_quicklist_alloc(void)
pgtable_quicklist = (unsigned long *)(*ret);
ret[0] = 0;
--pgtable_quicklist_size;
+ preempt_enable();
} else {
+ preempt_enable();
ret = (unsigned long *)__get_free_page(GFP_KERNEL | __GFP_ZERO);
}
- preempt_enable();
-
return ret;
}