aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sh/mmu.h
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-12-25 09:51:47 +0900
committerPaul Mundt <lethal@linux-sh.org>2007-02-13 10:54:45 +0900
commitaec5e0e1c179fac4bbca4007a3f0d3107275a73c (patch)
tree3b251e52a89445a5546f398fb16a002435b6c2b6 /include/asm-sh/mmu.h
parentsh: add SH_CLK_MD Kconfig default. (diff)
downloadlinux-dev-aec5e0e1c179fac4bbca4007a3f0d3107275a73c.tar.xz
linux-dev-aec5e0e1c179fac4bbca4007a3f0d3107275a73c.zip
sh: Use a per-cpu ASID cache.
Previously this was implemented using a global cache, cache this per-CPU instead and bump up the number of context IDs to match NR_CPUS. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to '')
-rw-r--r--include/asm-sh/mmu.h20
1 files changed, 7 insertions, 13 deletions
diff --git a/include/asm-sh/mmu.h b/include/asm-sh/mmu.h
index cf47df79bb94..eb0358c097d0 100644
--- a/include/asm-sh/mmu.h
+++ b/include/asm-sh/mmu.h
@@ -1,25 +1,19 @@
#ifndef __MMU_H
#define __MMU_H
-#if !defined(CONFIG_MMU)
+/* Default "unsigned long" context */
+typedef unsigned long mm_context_id_t[NR_CPUS];
typedef struct {
+#ifdef CONFIG_MMU
+ mm_context_id_t id;
+ void *vdso;
+#else
struct vm_list_struct *vmlist;
unsigned long end_brk;
+#endif
} mm_context_t;
-#else
-
-/* Default "unsigned long" context */
-typedef unsigned long mm_context_id_t;
-
-typedef struct {
- mm_context_id_t id;
- void *vdso;
-} mm_context_t;
-
-#endif /* CONFIG_MMU */
-
/*
* Privileged Space Mapping Buffer (PMB) definitions
*/