diff options
author | Thomas Bogendoerfer <tsbogend@alpha.franken.de> | 2008-08-04 20:53:57 +0200 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2008-09-05 21:24:11 +0100 |
commit | e0cee3eea7875800451739ae38f99edcf11c133d (patch) | |
tree | 411a044d9094582cb26963a6cee72fd4c594e9fb /arch/mips/mm/cache.c | |
parent | 0510617b85758b6e66f3c602ceccea1826440470 (diff) | |
download | blackbird-op-linux-e0cee3eea7875800451739ae38f99edcf11c133d.tar.gz blackbird-op-linux-e0cee3eea7875800451739ae38f99edcf11c133d.zip |
[MIPS] Fix WARNING: at kernel/smp.c:290
trap_init issues flush_icache_range(), which uses ipi functions to
get icache flushing done on all cpus. But this is done before interrupts
are enabled and caused WARN_ON messages. This changeset introduces
a new local_flush_icache_range() and uses it before interrupts (and
additional CPUs) are enabled to avoid this problem.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mm/cache.c')
-rw-r--r-- | arch/mips/mm/cache.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/mips/mm/cache.c b/arch/mips/mm/cache.c index 034e8506f6ea..1eb7c71e3d6a 100644 --- a/arch/mips/mm/cache.c +++ b/arch/mips/mm/cache.c @@ -29,6 +29,7 @@ void (*flush_cache_range)(struct vm_area_struct *vma, unsigned long start, void (*flush_cache_page)(struct vm_area_struct *vma, unsigned long page, unsigned long pfn); void (*flush_icache_range)(unsigned long start, unsigned long end); +void (*local_flush_icache_range)(unsigned long start, unsigned long end); void (*__flush_cache_vmap)(void); void (*__flush_cache_vunmap)(void); |