| .. | .. |
|---|
| 5 | 5 | #include <linux/mm.h> |
|---|
| 6 | 6 | #include <linux/sched.h> |
|---|
| 7 | 7 | #include <asm/processor.h> |
|---|
| 8 | | -#include <asm/pgalloc.h> |
|---|
| 9 | | -#include <asm/pgtable.h> |
|---|
| 10 | 8 | |
|---|
| 11 | 9 | /* |
|---|
| 12 | 10 | * Flush all TLB entries on the local CPU. |
|---|
| .. | .. |
|---|
| 31 | 29 | " .insn rrf,0xb98e0000,0,%0,%1,0" |
|---|
| 32 | 30 | : : "a" (opt), "a" (asce) : "cc"); |
|---|
| 33 | 31 | } |
|---|
| 34 | | - |
|---|
| 35 | | -#ifdef CONFIG_SMP |
|---|
| 36 | | -void smp_ptlb_all(void); |
|---|
| 37 | 32 | |
|---|
| 38 | 33 | /* |
|---|
| 39 | 34 | * Flush all TLB entries on all CPUs. |
|---|
| .. | .. |
|---|
| 83 | 78 | else |
|---|
| 84 | 79 | __tlb_flush_global(); |
|---|
| 85 | 80 | } |
|---|
| 86 | | -#else |
|---|
| 87 | | -#define __tlb_flush_global() __tlb_flush_local() |
|---|
| 88 | | - |
|---|
| 89 | | -/* |
|---|
| 90 | | - * Flush TLB entries for a specific ASCE on all CPUs. |
|---|
| 91 | | - */ |
|---|
| 92 | | -static inline void __tlb_flush_mm(struct mm_struct *mm) |
|---|
| 93 | | -{ |
|---|
| 94 | | - __tlb_flush_local(); |
|---|
| 95 | | -} |
|---|
| 96 | | - |
|---|
| 97 | | -static inline void __tlb_flush_kernel(void) |
|---|
| 98 | | -{ |
|---|
| 99 | | - __tlb_flush_local(); |
|---|
| 100 | | -} |
|---|
| 101 | | -#endif |
|---|
| 102 | 81 | |
|---|
| 103 | 82 | static inline void __tlb_flush_mm_lazy(struct mm_struct * mm) |
|---|
| 104 | 83 | { |
|---|