From: Martin Hicks Date: Tue, 26 Apr 2005 16:04:31 +0000 (-0700) Subject: [IA64] re-enable preempt before page allocation for pgtable quicklist X-Git-Tag: v2.6.12-rc4~197^2 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=2d29306b231a1a0e7a70166c10e4c0f917b21334;p=~emulex%2Finfiniband.git [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 Signed-off-by: Tony Luck --- diff --git a/include/asm-ia64/pgalloc.h b/include/asm-ia64/pgalloc.h index 2b7127330ae..a5f214554af 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; }