git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'sched/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
[pandora-kernel.git]
/
include
/
asm-x86
/
pgtable_64.h
diff --git
a/include/asm-x86/pgtable_64.h
b/include/asm-x86/pgtable_64.h
index
efe83dc
..
fa7208b
100644
(file)
--- a/
include/asm-x86/pgtable_64.h
+++ b/
include/asm-x86/pgtable_64.h
@@
-70,6
+70,9
@@
extern void paging_init(void);
struct mm_struct;
struct mm_struct;
+void set_pte_vaddr_pud(pud_t *pud_page, unsigned long vaddr, pte_t new_pte);
+
+
static inline void native_pte_clear(struct mm_struct *mm, unsigned long addr,
pte_t *ptep)
{
static inline void native_pte_clear(struct mm_struct *mm, unsigned long addr,
pte_t *ptep)
{
@@
-151,19
+154,19
@@
static inline void native_pgd_clear(pgd_t *pgd)
#ifndef __ASSEMBLY__
#ifndef __ASSEMBLY__
-static inline
unsigned long
pgd_bad(pgd_t pgd)
+static inline
int
pgd_bad(pgd_t pgd)
{
{
- return
pgd_val(pgd) & ~(PTE_MASK | _KERNPG_TABLE | _PAGE_USER)
;
+ return
(pgd_val(pgd) & ~(PTE_MASK | _PAGE_USER)) != _KERNPG_TABLE
;
}
}
-static inline
unsigned long
pud_bad(pud_t pud)
+static inline
int
pud_bad(pud_t pud)
{
{
- return
pud_val(pud) & ~(PTE_MASK | _KERNPG_TABLE | _PAGE_USER)
;
+ return
(pud_val(pud) & ~(PTE_MASK | _PAGE_USER)) != _KERNPG_TABLE
;
}
}
-static inline
unsigned long
pmd_bad(pmd_t pmd)
+static inline
int
pmd_bad(pmd_t pmd)
{
{
- return
pmd_val(pmd) & ~(PTE_MASK | _KERNPG_TABLE | _PAGE_USER)
;
+ return
(pmd_val(pmd) & ~(PTE_MASK | _PAGE_USER)) != _KERNPG_TABLE
;
}
#define pte_none(x) (!pte_val((x)))
}
#define pte_none(x) (!pte_val((x)))
@@
-190,12
+193,9
@@
static inline unsigned long pmd_bad(pmd_t pmd)
#define pgd_page_vaddr(pgd) \
((unsigned long)__va((unsigned long)pgd_val((pgd)) & PTE_MASK))
#define pgd_page(pgd) (pfn_to_page(pgd_val((pgd)) >> PAGE_SHIFT))
#define pgd_page_vaddr(pgd) \
((unsigned long)__va((unsigned long)pgd_val((pgd)) & PTE_MASK))
#define pgd_page(pgd) (pfn_to_page(pgd_val((pgd)) >> PAGE_SHIFT))
-#define pgd_index(address) (((address) >> PGDIR_SHIFT) & (PTRS_PER_PGD - 1))
-#define pgd_offset(mm, address) ((mm)->pgd + pgd_index((address)))
-#define pgd_offset_k(address) (init_level4_pgt + pgd_index((address)))
#define pgd_present(pgd) (pgd_val(pgd) & _PAGE_PRESENT)
static inline int pgd_large(pgd_t pgd) { return 0; }
#define pgd_present(pgd) (pgd_val(pgd) & _PAGE_PRESENT)
static inline int pgd_large(pgd_t pgd) { return 0; }
-#define mk_kernel_pgd(address)
((pgd_t){ (address) | _KERNPG_TABLE }
)
+#define mk_kernel_pgd(address)
__pgd((address) | _KERNPG_TABLE
)
/* PUD - Level3 access */
/* to find an entry in a page-table-directory. */
/* PUD - Level3 access */
/* to find an entry in a page-table-directory. */