diff options
Diffstat (limited to 'arch/um')
-rw-r--r-- | arch/um/include/asm/archparam-i386.h | 10 | ||||
-rw-r--r-- | arch/um/include/asm/fixmap.h | 1 | ||||
-rw-r--r-- | arch/um/include/asm/highmem.h | 12 | ||||
-rw-r--r-- | arch/um/include/asm/pgtable.h | 8 |
4 files changed, 14 insertions, 17 deletions
diff --git a/arch/um/include/asm/archparam-i386.h b/arch/um/include/asm/archparam-i386.h index 49e89b8d7e58..93fd723344e5 100644 --- a/arch/um/include/asm/archparam-i386.h +++ b/arch/um/include/asm/archparam-i386.h | |||
@@ -6,11 +6,11 @@ | |||
6 | #ifndef __UM_ARCHPARAM_I386_H | 6 | #ifndef __UM_ARCHPARAM_I386_H |
7 | #define __UM_ARCHPARAM_I386_H | 7 | #define __UM_ARCHPARAM_I386_H |
8 | 8 | ||
9 | /********* Nothing for asm-um/hardirq.h **********/ | 9 | #ifdef CONFIG_X86_PAE |
10 | 10 | #define LAST_PKMAP 512 | |
11 | /********* Nothing for asm-um/hw_irq.h **********/ | 11 | #else |
12 | 12 | #define LAST_PKMAP 1024 | |
13 | /********* Nothing for asm-um/string.h **********/ | 13 | #endif |
14 | 14 | ||
15 | #endif | 15 | #endif |
16 | 16 | ||
diff --git a/arch/um/include/asm/fixmap.h b/arch/um/include/asm/fixmap.h index 9d2be52b8655..69c0252345f1 100644 --- a/arch/um/include/asm/fixmap.h +++ b/arch/um/include/asm/fixmap.h | |||
@@ -6,6 +6,7 @@ | |||
6 | #include <asm/kmap_types.h> | 6 | #include <asm/kmap_types.h> |
7 | #include <asm/archparam.h> | 7 | #include <asm/archparam.h> |
8 | #include <asm/page.h> | 8 | #include <asm/page.h> |
9 | #include <linux/threads.h> | ||
9 | 10 | ||
10 | /* | 11 | /* |
11 | * Here we define all the compile-time 'special' virtual | 12 | * Here we define all the compile-time 'special' virtual |
diff --git a/arch/um/include/asm/highmem.h b/arch/um/include/asm/highmem.h deleted file mode 100644 index 36974cb8abc7..000000000000 --- a/arch/um/include/asm/highmem.h +++ /dev/null | |||
@@ -1,12 +0,0 @@ | |||
1 | #ifndef __UM_HIGHMEM_H | ||
2 | #define __UM_HIGHMEM_H | ||
3 | |||
4 | #include "asm/page.h" | ||
5 | #include "asm/fixmap.h" | ||
6 | #include "asm/arch/highmem.h" | ||
7 | |||
8 | #undef PKMAP_BASE | ||
9 | |||
10 | #define PKMAP_BASE ((FIXADDR_START - LAST_PKMAP * PAGE_SIZE) & PMD_MASK) | ||
11 | |||
12 | #endif | ||
diff --git a/arch/um/include/asm/pgtable.h b/arch/um/include/asm/pgtable.h index 02db81b7b86e..58da2480a7f4 100644 --- a/arch/um/include/asm/pgtable.h +++ b/arch/um/include/asm/pgtable.h | |||
@@ -47,6 +47,7 @@ extern unsigned long end_iomem; | |||
47 | 47 | ||
48 | #define VMALLOC_OFFSET (__va_space) | 48 | #define VMALLOC_OFFSET (__va_space) |
49 | #define VMALLOC_START ((end_iomem + VMALLOC_OFFSET) & ~(VMALLOC_OFFSET-1)) | 49 | #define VMALLOC_START ((end_iomem + VMALLOC_OFFSET) & ~(VMALLOC_OFFSET-1)) |
50 | #define PKMAP_BASE ((FIXADDR_START - LAST_PKMAP * PAGE_SIZE) & PMD_MASK) | ||
50 | #ifdef CONFIG_HIGHMEM | 51 | #ifdef CONFIG_HIGHMEM |
51 | # define VMALLOC_END (PKMAP_BASE-2*PAGE_SIZE) | 52 | # define VMALLOC_END (PKMAP_BASE-2*PAGE_SIZE) |
52 | #else | 53 | #else |
@@ -355,4 +356,11 @@ extern pte_t *virt_to_pte(struct mm_struct *mm, unsigned long addr); | |||
355 | 356 | ||
356 | #include <asm-generic/pgtable.h> | 357 | #include <asm-generic/pgtable.h> |
357 | 358 | ||
359 | /* Clear a kernel PTE and flush it from the TLB */ | ||
360 | #define kpte_clear_flush(ptep, vaddr) \ | ||
361 | do { \ | ||
362 | pte_clear(&init_mm, (vaddr), (ptep)); \ | ||
363 | __flush_tlb_one((vaddr)); \ | ||
364 | } while (0) | ||
365 | |||
358 | #endif | 366 | #endif |