[PATCH] MIPS: KProbes: Use flush_insn_slot() where possible.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: David Daney <ddaney@xxxxxxxxxxxxxxxxxx>
---

This is a small cleanup that could either be folded into the original
3/5 or applied in addition to it.

 arch/mips/include/asm/kprobes.h |    1 +
 arch/mips/kernel/kprobes.c      |   11 +++--------
 2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/arch/mips/include/asm/kprobes.h b/arch/mips/include/asm/kprobes.h
index fe58e08..e6ea4d4 100644
--- a/arch/mips/include/asm/kprobes.h
+++ b/arch/mips/include/asm/kprobes.h
@@ -25,6 +25,7 @@
 #include <linux/ptrace.h>
 #include <linux/types.h>
 
+#include <asm/cacheflush.h>
 #include <asm/kdebug.h>
 #include <asm/inst.h>
 
diff --git a/arch/mips/kernel/kprobes.c b/arch/mips/kernel/kprobes.c
index a74ccd2..ee28683 100644
--- a/arch/mips/kernel/kprobes.c
+++ b/arch/mips/kernel/kprobes.c
@@ -28,7 +28,6 @@
 #include <linux/kdebug.h>
 #include <linux/slab.h>
 
-#include <asm/cacheflush.h>
 #include <asm/ptrace.h>
 #include <asm/break.h>
 #include <asm/inst.h>
@@ -151,18 +150,14 @@ out:
 
 void __kprobes arch_arm_kprobe(struct kprobe *p)
 {
-	*(p->addr) = breakpoint_insn;
-	flush_icache_range((unsigned long)p->addr,
-			   (unsigned long)p->addr +
-			   (MAX_INSN_SIZE * sizeof(kprobe_opcode_t)));
+	*p->addr = breakpoint_insn;
+	flush_insn_slot(p);
 }
 
 void __kprobes arch_disarm_kprobe(struct kprobe *p)
 {
 	*p->addr = p->opcode;
-	flush_icache_range((unsigned long)p->addr,
-			   (unsigned long)p->addr +
-			   (MAX_INSN_SIZE * sizeof(kprobe_opcode_t)));
+	flush_insn_slot(p);
 }
 
 void __kprobes arch_remove_kprobe(struct kprobe *p)
-- 
1.7.1.1




[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux