[PATCH] Kprobes: Track kprobe on a per_cpu basis - ppc64 changes

PPC64 changes to track kprobe execution on a per-cpu basis.  We now track the
kprobe state machine independently on each cpu using an arch specific kprobe
control block.

Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Ananth N Mavinakayanahalli
2005-11-07 01:00:10 -08:00
committed by Linus Torvalds
parent 8a5c4dc5e5
commit 0dc036c91a
2 changed files with 69 additions and 40 deletions

View File

@@ -27,6 +27,7 @@
*/
#include <linux/types.h>
#include <linux/ptrace.h>
#include <linux/percpu.h>
struct pt_regs;
@@ -53,6 +54,20 @@ struct arch_specific_insn {
kprobe_opcode_t *insn;
};
struct prev_kprobe {
struct kprobe *kp;
unsigned long status;
unsigned long saved_msr;
};
/* per-cpu kprobe control block */
struct kprobe_ctlblk {
unsigned long kprobe_status;
unsigned long kprobe_saved_msr;
struct pt_regs jprobe_saved_regs;
struct prev_kprobe prev_kprobe;
};
#ifdef CONFIG_KPROBES
extern int kprobe_exceptions_notify(struct notifier_block *self,
unsigned long val, void *data);