aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2012-05-18 06:30:05 -0400
committerPaul Mundt <lethal@linux-sh.org>2012-05-18 06:30:05 -0400
commitc3e0af98792f9f1c840dc969f883e46d0ced3e00 (patch)
tree4e84c35e704337aec0fef7d7f824f14f6d230d61
parent0e8963de1fe95e7fbc30c79c1dbc7cb1ea0cf699 (diff)
Revert "sh: Ensure fixmap and store queue space can co-exist."
This reverts commit 20e7c297efeca0861adcca073a0d283da659834b. With store queues enabled the area above P4SEG has special properties from the MMU's point of view, which was causing fixmap failure. We'll have to do something else to satisfy the vmalloc range check. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r--arch/sh/include/asm/fixmap.h2
-rw-r--r--arch/sh/mm/fault.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/arch/sh/include/asm/fixmap.h b/arch/sh/include/asm/fixmap.h
index 41cda1264bb0..cbe0186b6794 100644
--- a/arch/sh/include/asm/fixmap.h
+++ b/arch/sh/include/asm/fixmap.h
@@ -94,7 +94,7 @@ extern void __clear_fixmap(enum fixed_addresses idx, pgprot_t flags);
94 * at the top of mem.. 94 * at the top of mem..
95 */ 95 */
96#ifdef CONFIG_SUPERH32 96#ifdef CONFIG_SUPERH32
97#define FIXADDR_TOP (P3_ADDR_MAX - PAGE_SIZE) 97#define FIXADDR_TOP (P4SEG - PAGE_SIZE)
98#else 98#else
99#define FIXADDR_TOP ((unsigned long)(-PAGE_SIZE)) 99#define FIXADDR_TOP ((unsigned long)(-PAGE_SIZE))
100#endif 100#endif
diff --git a/arch/sh/mm/fault.c b/arch/sh/mm/fault.c
index 16799f920f90..b0345f09c197 100644
--- a/arch/sh/mm/fault.c
+++ b/arch/sh/mm/fault.c
@@ -169,8 +169,8 @@ static noinline int vmalloc_fault(unsigned long address)
169 pmd_t *pmd_k; 169 pmd_t *pmd_k;
170 pte_t *pte_k; 170 pte_t *pte_k;
171 171
172 /* Make sure we are in vmalloc/module area: */ 172 /* Make sure we are in vmalloc/module/P3 area: */
173 if (!is_vmalloc_addr((void *)address)) 173 if (!(address >= P3SEG && address < P3_ADDR_MAX))
174 return -1; 174 return -1;
175 175
176 /* 176 /*