diff options
author | Ralf Baechle | 2016-01-28 14:26:00 +0100 |
---|---|---|
committer | Ralf Baechle | 2016-05-13 14:01:38 +0200 |
commit | 34ae8e3688fb8af2afaf52b78c6f20c74c6ae650 (patch) | |
tree | 4d242fab4556c7ff5ea856b556cbd42ae92be021 /arch/mips | |
parent | 429365b2a1a90b593a730f54819a4c5dfd98553b (diff) |
MIPS: highmem: Turn flush_cache_kmaps into a no-op.
It was calling flush_cache_all() which is a no-op since a long time anyway
and which was overkill in the old days when it was actually doing something
because only the D-cache needs to be flushed, never the I-cache, never
the S-cache. Since however highmem on MIPS is still only supported on
processors that don't suffer from cache aliases, we could turn
flush_cache_kmaps() into a no-op - but for paranoia's sake we rather make
it BUG_ON(cpu_has_dc_aliases()).
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips')
-rw-r--r-- | arch/mips/include/asm/highmem.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mips/include/asm/highmem.h b/arch/mips/include/asm/highmem.h index 01880b34a209..64f2500d891b 100644 --- a/arch/mips/include/asm/highmem.h +++ b/arch/mips/include/asm/highmem.h @@ -19,8 +19,10 @@ #ifdef __KERNEL__ +#include <linux/bug.h> #include <linux/interrupt.h> #include <linux/uaccess.h> +#include <asm/cpu-features.h> #include <asm/kmap_types.h> /* undef for production */ @@ -50,7 +52,7 @@ extern void *kmap_atomic(struct page *page); extern void __kunmap_atomic(void *kvaddr); extern void *kmap_atomic_pfn(unsigned long pfn); -#define flush_cache_kmaps() flush_cache_all() +#define flush_cache_kmaps() BUG_ON(cpu_has_dc_aliases) extern void kmap_init(void); |