]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - arch/microblaze/kernel/exceptions.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / arch / microblaze / kernel / exceptions.c
index 478f2943ede77d3e5b6a507e6bec662dd7f1424c..a7fa6ae76d8982338d690939ee5c554dced410e4 100644 (file)
@@ -25,6 +25,7 @@
 #include <linux/errno.h>
 #include <linux/ptrace.h>
 #include <asm/current.h>
+#include <asm/cacheflush.h>
 
 #define MICROBLAZE_ILL_OPCODE_EXCEPTION        0x02
 #define MICROBLAZE_IBUS_EXCEPTION      0x03
@@ -52,6 +53,8 @@ void die(const char *str, struct pt_regs *fp, long err)
 void sw_exception(struct pt_regs *regs)
 {
        _exception(SIGTRAP, regs, TRAP_BRKPT, regs->r16);
+       flush_dcache_range(regs->r16, regs->r16 + 0x4);
+       flush_icache_range(regs->r16, regs->r16 + 0x4);
 }
 
 void _exception(int signr, struct pt_regs *regs, int code, unsigned long addr)