[PATCH tip] x86: unsigned long pte_pfn

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Jeremy Fitzhardinge <jeremy@...>
Cc: <x86@...>, <linux-kernel@...>
Date: Monday, September 8, 2008 - 4:04 pm

pte_pfn() has always been of type unsigned long, even on 32-bit PAE;
but in the current tip/next/mm tree it's unsigned long long on 64-bit,
which gives an irritating warning if you try to printk a pfn with the
usual %lx.  Copy the inline function used by 32-bit's pgtable-3level.h.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
---

 include/asm-x86/pgtable_64.h |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

--- 2.6.27-rc5-mm1/include/asm-x86/pgtable_64.h	2008-09-05 10:08:04.000000000 +0100
+++ linux/include/asm-x86/pgtable_64.h	2008-09-08 19:12:39.000000000 +0100
@@ -182,7 +182,11 @@ static inline int pmd_bad(pmd_t pmd)
 
 #define pages_to_mb(x)	((x) >> (20 - PAGE_SHIFT))   /* FIXME: is this right? */
 #define pte_page(x)	pfn_to_page(pte_pfn((x)))
-#define pte_pfn(x)	((pte_val((x)) & __PHYSICAL_MASK) >> PAGE_SHIFT)
+
+static inline unsigned long pte_pfn(pte_t pte)
+{
+	return (pte_val(pte) & PTE_PFN_MASK) >> PAGE_SHIFT;
+}
 
 /*
  * Macro to mark a page protection value as "uncacheable".
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH tip] x86: unsigned long pte_pfn, Hugh Dickins, (Mon Sep 8, 4:04 pm)
Re: [PATCH tip] x86: unsigned long pte_pfn, Jeremy Fitzhardinge, (Mon Sep 8, 4:23 pm)
Re: [PATCH tip] x86: unsigned long pte_pfn, Hugh Dickins, (Tue Sep 9, 11:42 am)
Re: [PATCH tip] x86: unsigned long pte_pfn, Jeremy Fitzhardinge, (Tue Sep 9, 12:52 pm)
Re: [PATCH tip] x86: unsigned long pte_pfn, Ingo Molnar, (Wed Sep 10, 4:00 am)