diff options
author | Dean Roe <roe@sgi.com> | 2005-11-09 14:25:06 -0600 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2005-11-29 09:24:10 -0800 |
commit | b77dae5293efba42ea1ff04d410ee68e66d5b0cf (patch) | |
tree | e7cff6570c32d55e4743f0e59c53ab9086c1efd6 /include/asm-ia64 | |
parent | 624f54be206adf970cd8eece16446b027913e533 (diff) | |
download | op-kernel-dev-b77dae5293efba42ea1ff04d410ee68e66d5b0cf.zip op-kernel-dev-b77dae5293efba42ea1ff04d410ee68e66d5b0cf.tar.gz |
[IA64] - Make pfn_valid more precise for SGI Altix systems
A single SGI Altix system can be divided into multiple partitions,
each running their own instance of the Linux kernel. pfn_valid()
is currently not optimal for any but the first partition, since it
does not compare the pfn with min_low_pfn before calling the more
costly ia64_pfn_valid().
Signed-off-by: Dean Roe <roe@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'include/asm-ia64')
-rw-r--r-- | include/asm-ia64/page.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/asm-ia64/page.h b/include/asm-ia64/page.h index 9dd9da1..5e6362a 100644 --- a/include/asm-ia64/page.h +++ b/include/asm-ia64/page.h @@ -110,8 +110,9 @@ extern int ia64_pfn_valid (unsigned long pfn); # define pfn_to_page(pfn) (mem_map + (pfn)) #elif defined(CONFIG_DISCONTIGMEM) extern struct page *vmem_map; +extern unsigned long min_low_pfn; extern unsigned long max_low_pfn; -# define pfn_valid(pfn) (((pfn) < max_low_pfn) && ia64_pfn_valid(pfn)) +# define pfn_valid(pfn) (((pfn) >= min_low_pfn) && ((pfn) < max_low_pfn) && ia64_pfn_valid(pfn)) # define page_to_pfn(page) ((unsigned long) (page - vmem_map)) # define pfn_to_page(pfn) (vmem_map + (pfn)) #endif |