aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-um/tlbflush.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-um/tlbflush.h')
-rw-r--r--include/asm-um/tlbflush.h25
1 files changed, 3 insertions, 22 deletions
diff --git a/include/asm-um/tlbflush.h b/include/asm-um/tlbflush.h
index e78c28c1f350..614f2c091178 100644
--- a/include/asm-um/tlbflush.h
+++ b/include/asm-um/tlbflush.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (C) 2002 Jeff Dike (jdike@karaya.com) 2 * Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 * Licensed under the GPL 3 * Licensed under the GPL
4 */ 4 */
5 5
@@ -7,7 +7,6 @@
7#define __UM_TLBFLUSH_H 7#define __UM_TLBFLUSH_H
8 8
9#include <linux/mm.h> 9#include <linux/mm.h>
10#include "choose-mode.h"
11 10
12/* 11/*
13 * TLB flushing: 12 * TLB flushing:
@@ -18,33 +17,15 @@
18 * - flush_tlb_page(vma, vmaddr) flushes one page 17 * - flush_tlb_page(vma, vmaddr) flushes one page
19 * - flush_tlb_kernel_vm() flushes the kernel vm area 18 * - flush_tlb_kernel_vm() flushes the kernel vm area
20 * - flush_tlb_range(vma, start, end) flushes a range of pages 19 * - flush_tlb_range(vma, start, end) flushes a range of pages
21 * - flush_tlb_pgtables(mm, start, end) flushes a range of page tables
22 */ 20 */
23 21
24extern void flush_tlb_all(void); 22extern void flush_tlb_all(void);
25extern void flush_tlb_mm(struct mm_struct *mm); 23extern void flush_tlb_mm(struct mm_struct *mm);
26extern void flush_tlb_range(struct vm_area_struct *vma, unsigned long start, 24extern void flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
27 unsigned long end); 25 unsigned long end);
28extern void flush_tlb_page_skas(struct vm_area_struct *vma, 26extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long address);
29 unsigned long address);
30
31static inline void flush_tlb_page(struct vm_area_struct *vma,
32 unsigned long address)
33{
34 address &= PAGE_MASK;
35
36 CHOOSE_MODE(flush_tlb_range(vma, address, address + PAGE_SIZE),
37 flush_tlb_page_skas(vma, address));
38}
39
40extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr);
41extern void flush_tlb_kernel_vm(void); 27extern void flush_tlb_kernel_vm(void);
42extern void flush_tlb_kernel_range(unsigned long start, unsigned long end); 28extern void flush_tlb_kernel_range(unsigned long start, unsigned long end);
43extern void __flush_tlb_one(unsigned long addr); 29extern void __flush_tlb_one(unsigned long addr);
44 30
45static inline void flush_tlb_pgtables(struct mm_struct *mm,
46 unsigned long start, unsigned long end)
47{
48}
49
50#endif 31#endif