lkml.org 
[lkml]   [2008]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH tip] x86: unsigned long pte_pfn
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".

\
 
 \ /
  Last update: 2008-09-08 22:07    [W:0.059 / U:1.024 seconds]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site