diff options
Diffstat (limited to 'arch/um/include/asm/page.h')
-rw-r--r-- | arch/um/include/asm/page.h | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/arch/um/include/asm/page.h b/arch/um/include/asm/page.h index e13d41c392ae..f878bec23576 100644 --- a/arch/um/include/asm/page.h +++ b/arch/um/include/asm/page.h | |||
@@ -34,21 +34,18 @@ struct page; | |||
34 | 34 | ||
35 | #if defined(CONFIG_3_LEVEL_PGTABLES) && !defined(CONFIG_64BIT) | 35 | #if defined(CONFIG_3_LEVEL_PGTABLES) && !defined(CONFIG_64BIT) |
36 | 36 | ||
37 | typedef struct { unsigned long pte_low, pte_high; } pte_t; | 37 | typedef struct { unsigned long pte; } pte_t; |
38 | typedef struct { unsigned long pmd; } pmd_t; | 38 | typedef struct { unsigned long pmd; } pmd_t; |
39 | typedef struct { unsigned long pgd; } pgd_t; | 39 | typedef struct { unsigned long pgd; } pgd_t; |
40 | #define pte_val(x) ((x).pte_low | ((unsigned long long) (x).pte_high << 32)) | 40 | #define pte_val(p) ((p).pte) |
41 | 41 | ||
42 | #define pte_get_bits(pte, bits) ((pte).pte_low & (bits)) | 42 | #define pte_get_bits(p, bits) ((p).pte & (bits)) |
43 | #define pte_set_bits(pte, bits) ((pte).pte_low |= (bits)) | 43 | #define pte_set_bits(p, bits) ((p).pte |= (bits)) |
44 | #define pte_clear_bits(pte, bits) ((pte).pte_low &= ~(bits)) | 44 | #define pte_clear_bits(p, bits) ((p).pte &= ~(bits)) |
45 | #define pte_copy(to, from) ({ (to).pte_high = (from).pte_high; \ | 45 | #define pte_copy(to, from) ({ (to).pte = (from).pte; }) |
46 | smp_wmb(); \ | 46 | #define pte_is_zero(p) (!((p).pte & ~_PAGE_NEWPAGE)) |
47 | (to).pte_low = (from).pte_low; }) | 47 | #define pte_set_val(p, phys, prot) \ |
48 | #define pte_is_zero(pte) (!((pte).pte_low & ~_PAGE_NEWPAGE) && !(pte).pte_high) | 48 | ({ (p).pte = (phys) | pgprot_val(prot); }) |
49 | #define pte_set_val(pte, phys, prot) \ | ||
50 | ({ (pte).pte_high = (phys) >> 32; \ | ||
51 | (pte).pte_low = (phys) | pgprot_val(prot); }) | ||
52 | 49 | ||
53 | #define pmd_val(x) ((x).pmd) | 50 | #define pmd_val(x) ((x).pmd) |
54 | #define __pmd(x) ((pmd_t) { (x) } ) | 51 | #define __pmd(x) ((pmd_t) { (x) } ) |