diff options
author | Paul Mundt <lethal@linux-sh.org> | 2006-09-27 02:13:36 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2006-09-27 02:13:36 -0400 |
commit | 26ff6c11ef38e08990c1e417c299246e6ab18ff7 (patch) | |
tree | ebd37fd0270b7c7dfe8474a046663db78fcdb1ab /include/asm-sh/cpu-sh3 | |
parent | 9359e757709a211040e4b0151eae69248e7c6eca (diff) |
sh: page table alloc cleanups and page fault optimizations.
Cleanup of page table allocators, using generic folded PMD and PUD
helpers. TLB flushing operations are moved to a more sensible spot.
The page fault handler is also optimized slightly, we no longer waste
cycles on IRQ disabling for flushing of the page from the ITLB, since
we're already under CLI protection by the initial exception handler.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh/cpu-sh3')
-rw-r--r-- | include/asm-sh/cpu-sh3/cacheflush.h | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/include/asm-sh/cpu-sh3/cacheflush.h b/include/asm-sh/cpu-sh3/cacheflush.h index f51aed00c68f..db0cb071ea8e 100644 --- a/include/asm-sh/cpu-sh3/cacheflush.h +++ b/include/asm-sh/cpu-sh3/cacheflush.h | |||
@@ -10,7 +10,7 @@ | |||
10 | #ifndef __ASM_CPU_SH3_CACHEFLUSH_H | 10 | #ifndef __ASM_CPU_SH3_CACHEFLUSH_H |
11 | #define __ASM_CPU_SH3_CACHEFLUSH_H | 11 | #define __ASM_CPU_SH3_CACHEFLUSH_H |
12 | 12 | ||
13 | /* | 13 | /* |
14 | * Cache flushing: | 14 | * Cache flushing: |
15 | * | 15 | * |
16 | * - flush_cache_all() flushes entire cache | 16 | * - flush_cache_all() flushes entire cache |
@@ -35,10 +35,6 @@ | |||
35 | /* 32KB cache, 4kb PAGE sizes need to check bit 12 */ | 35 | /* 32KB cache, 4kb PAGE sizes need to check bit 12 */ |
36 | #define CACHE_ALIAS 0x00001000 | 36 | #define CACHE_ALIAS 0x00001000 |
37 | 37 | ||
38 | struct page; | ||
39 | struct mm_struct; | ||
40 | struct vm_area_struct; | ||
41 | |||
42 | extern void flush_cache_all(void); | 38 | extern void flush_cache_all(void); |
43 | extern void flush_cache_mm(struct mm_struct *mm); | 39 | extern void flush_cache_mm(struct mm_struct *mm); |
44 | extern void flush_cache_range(struct vm_area_struct *vma, unsigned long start, | 40 | extern void flush_cache_range(struct vm_area_struct *vma, unsigned long start, |
@@ -79,8 +75,6 @@ extern void flush_icache_page(struct vm_area_struct *vma, struct page *page); | |||
79 | 75 | ||
80 | #define p3_cache_init() do { } while (0) | 76 | #define p3_cache_init() do { } while (0) |
81 | 77 | ||
82 | #define HAVE_ARCH_UNMAPPED_AREA | ||
83 | |||
84 | #endif | 78 | #endif |
85 | 79 | ||
86 | #endif /* __ASM_CPU_SH3_CACHEFLUSH_H */ | 80 | #endif /* __ASM_CPU_SH3_CACHEFLUSH_H */ |