summaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/pgtable.h
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2009-02-05 20:30:58 +0100
committerJeremy Fitzhardinge <jeremy@goop.org>2009-02-06 21:31:49 +0100
commit3d081b1812bd4de2bbef58c6d598ddf45493010e (patch)
tree698e5da0c1329ab1dd77ce8f8447e581e54fcba6 /arch/x86/include/asm/pgtable.h
parentx86: unify pud_index (diff)
downloadlinux-3d081b1812bd4de2bbef58c6d598ddf45493010e.tar.xz
linux-3d081b1812bd4de2bbef58c6d598ddf45493010e.zip
x86: unify pud_offset
Impact: cleanup Unify and demacro pud_offset. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86/include/asm/pgtable.h')
-rw-r--r--arch/x86/include/asm/pgtable.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h
index a51a97ade636..decccb0a6410 100644
--- a/arch/x86/include/asm/pgtable.h
+++ b/arch/x86/include/asm/pgtable.h
@@ -506,6 +506,11 @@ static inline unsigned pud_index(unsigned long address)
{
return (address >> PUD_SHIFT) & (PTRS_PER_PUD - 1);
}
+
+static inline pud_t *pud_offset(pgd_t *pgd, unsigned long address)
+{
+ return (pud_t *)pgd_page_vaddr(*pgd) + pud_index(address);
+}
#endif /* PAGETABLE_LEVELS > 3 */
#endif /* __ASSEMBLY__ */