diff options
Diffstat (limited to 'arch/um/include/asm/pgtable.h')
| -rw-r--r-- | arch/um/include/asm/pgtable.h | 14 | 
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/um/include/asm/pgtable.h b/arch/um/include/asm/pgtable.h index 41474fb5eee..bf974f712af 100644 --- a/arch/um/include/asm/pgtable.h +++ b/arch/um/include/asm/pgtable.h @@ -23,9 +23,9 @@  				   pte_present gives true */  #ifdef CONFIG_3_LEVEL_PGTABLES -#include "asm/pgtable-3level.h" +#include <asm/pgtable-3level.h>  #else -#include "asm/pgtable-2level.h" +#include <asm/pgtable-2level.h>  #endif  extern pgd_t swapper_pg_dir[PTRS_PER_PGD]; @@ -271,6 +271,12 @@ static inline void set_pte(pte_t *pteptr, pte_t pteval)  }  #define set_pte_at(mm,addr,ptep,pteval) set_pte(ptep,pteval) +#define __HAVE_ARCH_PTE_SAME +static inline int pte_same(pte_t pte_a, pte_t pte_b) +{ +	return !((pte_val(pte_a) ^ pte_val(pte_b)) & ~_PAGE_NEWPAGE); +} +  /*   * Conversion functions: convert a page and protection to a page entry,   * and a page entry and page directory to the page they refer to. @@ -346,11 +352,11 @@ extern pte_t *virt_to_pte(struct mm_struct *mm, unsigned long addr);  #define update_mmu_cache(vma,address,ptep) do ; while (0)  /* Encode and de-code a swap entry */ -#define __swp_type(x)			(((x).val >> 4) & 0x3f) +#define __swp_type(x)			(((x).val >> 5) & 0x1f)  #define __swp_offset(x)			((x).val >> 11)  #define __swp_entry(type, offset) \ -	((swp_entry_t) { ((type) << 4) | ((offset) << 11) }) +	((swp_entry_t) { ((type) << 5) | ((offset) << 11) })  #define __pte_to_swp_entry(pte) \  	((swp_entry_t) { pte_val(pte_mkuptodate(pte)) })  #define __swp_entry_to_pte(x)		((pte_t) { (x).val })  | 
