diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:32:54 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:32:54 -0500 |
commit | 82bc03fc158e28c90d7ed9919410776039cb4e14 (patch) | |
tree | c104bbd59e8643c93197d215acefe76463adfe77 /include/asm-x86 | |
parent | 7375931a27bbe687e03ae3c28178920b0c66a87d (diff) |
x86: add PWT to NOCACHE flags
add PWT bit to NOCACHE flags. No real difference to CPUs, but needed
later for PAT.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-x86')
-rw-r--r-- | include/asm-x86/pgtable_32.h | 2 | ||||
-rw-r--r-- | include/asm-x86/pgtable_64.h | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/include/asm-x86/pgtable_32.h b/include/asm-x86/pgtable_32.h index a8be1ee15a99..16da5d5cce40 100644 --- a/include/asm-x86/pgtable_32.h +++ b/include/asm-x86/pgtable_32.h | |||
@@ -156,7 +156,7 @@ void paging_init(void); | |||
156 | extern unsigned long long __PAGE_KERNEL, __PAGE_KERNEL_EXEC; | 156 | extern unsigned long long __PAGE_KERNEL, __PAGE_KERNEL_EXEC; |
157 | #define __PAGE_KERNEL_RO (__PAGE_KERNEL & ~_PAGE_RW) | 157 | #define __PAGE_KERNEL_RO (__PAGE_KERNEL & ~_PAGE_RW) |
158 | #define __PAGE_KERNEL_RX (__PAGE_KERNEL_EXEC & ~_PAGE_RW) | 158 | #define __PAGE_KERNEL_RX (__PAGE_KERNEL_EXEC & ~_PAGE_RW) |
159 | #define __PAGE_KERNEL_NOCACHE (__PAGE_KERNEL | _PAGE_PCD) | 159 | #define __PAGE_KERNEL_NOCACHE (__PAGE_KERNEL | _PAGE_PCD | _PAGE_PWT) |
160 | #define __PAGE_KERNEL_LARGE (__PAGE_KERNEL | _PAGE_PSE) | 160 | #define __PAGE_KERNEL_LARGE (__PAGE_KERNEL | _PAGE_PSE) |
161 | #define __PAGE_KERNEL_LARGE_EXEC (__PAGE_KERNEL_EXEC | _PAGE_PSE) | 161 | #define __PAGE_KERNEL_LARGE_EXEC (__PAGE_KERNEL_EXEC | _PAGE_PSE) |
162 | 162 | ||
diff --git a/include/asm-x86/pgtable_64.h b/include/asm-x86/pgtable_64.h index 3f280105d7b3..9c9cddf5138b 100644 --- a/include/asm-x86/pgtable_64.h +++ b/include/asm-x86/pgtable_64.h | |||
@@ -189,13 +189,13 @@ static inline pte_t ptep_get_and_clear_full(struct mm_struct *mm, unsigned long | |||
189 | #define __PAGE_KERNEL_EXEC \ | 189 | #define __PAGE_KERNEL_EXEC \ |
190 | (_PAGE_PRESENT | _PAGE_RW | _PAGE_DIRTY | _PAGE_ACCESSED) | 190 | (_PAGE_PRESENT | _PAGE_RW | _PAGE_DIRTY | _PAGE_ACCESSED) |
191 | #define __PAGE_KERNEL_NOCACHE \ | 191 | #define __PAGE_KERNEL_NOCACHE \ |
192 | (_PAGE_PRESENT | _PAGE_RW | _PAGE_DIRTY | _PAGE_PCD | _PAGE_ACCESSED | _PAGE_NX) | 192 | (_PAGE_PRESENT | _PAGE_RW | _PAGE_DIRTY | _PAGE_PCD | _PAGE_PWT | _PAGE_ACCESSED | _PAGE_NX) |
193 | #define __PAGE_KERNEL_RO \ | 193 | #define __PAGE_KERNEL_RO \ |
194 | (_PAGE_PRESENT | _PAGE_DIRTY | _PAGE_ACCESSED | _PAGE_NX) | 194 | (_PAGE_PRESENT | _PAGE_DIRTY | _PAGE_ACCESSED | _PAGE_NX) |
195 | #define __PAGE_KERNEL_VSYSCALL \ | 195 | #define __PAGE_KERNEL_VSYSCALL \ |
196 | (_PAGE_PRESENT | _PAGE_USER | _PAGE_ACCESSED) | 196 | (_PAGE_PRESENT | _PAGE_USER | _PAGE_ACCESSED) |
197 | #define __PAGE_KERNEL_VSYSCALL_NOCACHE \ | 197 | #define __PAGE_KERNEL_VSYSCALL_NOCACHE \ |
198 | (_PAGE_PRESENT | _PAGE_USER | _PAGE_ACCESSED | _PAGE_PCD) | 198 | (_PAGE_PRESENT | _PAGE_USER | _PAGE_ACCESSED | _PAGE_PCD | _PAGE_PWT) |
199 | #define __PAGE_KERNEL_LARGE \ | 199 | #define __PAGE_KERNEL_LARGE \ |
200 | (__PAGE_KERNEL | _PAGE_PSE) | 200 | (__PAGE_KERNEL | _PAGE_PSE) |
201 | #define __PAGE_KERNEL_LARGE_EXEC \ | 201 | #define __PAGE_KERNEL_LARGE_EXEC \ |