On Sun, 2013-12-15 at 23:08 -0500, David Long wrote: > From: "David A. Long" <dave.l...@linaro.org> > > Separate the kprobe-only definitions from the definitions needed by > both kprobes and uprobes. > > Signed-off-by: David A. Long <dave.l...@linaro.org> > --- > arch/arm/include/asm/kprobes.h | 15 +-------------- > arch/arm/include/asm/probes.h | 18 ++++++++++++++++++ > 2 files changed, 19 insertions(+), 14 deletions(-) > create mode 100644 arch/arm/include/asm/probes.h > > diff --git a/arch/arm/include/asm/kprobes.h b/arch/arm/include/asm/kprobes.h > index f82ec22..30fc11b 100644 > --- a/arch/arm/include/asm/kprobes.h > +++ b/arch/arm/include/asm/kprobes.h > @@ -28,21 +28,8 @@ > #define kretprobe_blacklist_size 0 > > typedef u32 kprobe_opcode_t; > - > struct kprobe; > -typedef void (kprobe_insn_handler_t)(struct kprobe *, struct pt_regs *); > -typedef unsigned long (kprobe_check_cc)(unsigned long); > -typedef void (kprobe_insn_singlestep_t)(struct kprobe *, struct pt_regs *); > -typedef void (kprobe_insn_fn_t)(void); > - > -/* Architecture specific copy of original instruction. */ > -struct arch_specific_insn { > - kprobe_opcode_t *insn; > - kprobe_insn_handler_t *insn_handler; > - kprobe_check_cc *insn_check_cc; > - kprobe_insn_singlestep_t *insn_singlestep; > - kprobe_insn_fn_t *insn_fn; > -}; > +#include <asm/probes.h> > > struct prev_kprobe { > struct kprobe *kp; > diff --git a/arch/arm/include/asm/probes.h b/arch/arm/include/asm/probes.h > new file mode 100644 > index 0000000..21da148 > --- /dev/null > +++ b/arch/arm/include/asm/probes.h > @@ -0,0 +1,18 @@
This new file doesn't have any copyright/license notice, I suggest you copy the one from kprobes.h and include a note to say this new files contents were copied, e.g. start it like... /* * arch/arm/include/asm/probes.h * * Original contents copied from arch/arm/include/asm/kprobes.h * which contains the following notice... * * Copyright (C) 2006, 2007 Motorola Inc. * * This program is free software; you can redistribute it and/or modify [...] > +#ifndef _ASM_PROBES_H > +#define _ASM_PROBES_H > + > +typedef void (kprobe_insn_handler_t)(struct kprobe *, struct pt_regs *); > +typedef unsigned long (kprobe_check_cc)(unsigned long); > +typedef void (kprobe_insn_singlestep_t)(struct kprobe *, struct pt_regs *); > +typedef void (kprobe_insn_fn_t)(void); > + > +/* Architecture specific copy of original instruction. */ > +struct arch_specific_insn { > + kprobe_opcode_t *insn; > + kprobe_insn_handler_t *insn_handler; > + kprobe_check_cc *insn_check_cc; > + kprobe_insn_singlestep_t *insn_singlestep; > + kprobe_insn_fn_t *insn_fn; > +}; > + > +#endif -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/