Messages in this thread | | | Date | Wed, 19 Nov 2014 16:51:24 +0530 | Subject | Re: [PATCH v3 1/5] arm64: Kprobes with single stepping support | From | Sandeepa Prabhu <> |
| |
On 18 November 2014 20:26, Will Deacon <will.deacon@arm.com> wrote:
> One thing I noticed looking through this patch is that we're effectively > reinventing a bunch of the instruction decoding logic that we already have > in the kernel (introduced since Sandeepa last sent his patch). > > Could you take a look at include/asm/insn.h and kernel/insn.c please, and > see if you can at least consolidate some of this? Some of it should be easy > (i.e. reusing masks, using existing #defines to construct BRK encodings), > but I appreciate there may be places where kprobes needs to add extra bits, > in which case I'd really like to keep this all together if at all possible. > > We're currently in a position where the module loader, BPF jit, ftrace and > the proposed alternative patching scheme are all using the same instruction > manipulation functions, so we should try to continue that trend if we can. Will,
kernel/insn.c support generating instruction encodings(forming opcodes with given specifications), so for kprobes, only BRK encoding can use this mechanism. For instruction simulation, the instruction behavior should be simulated on saved pt_regs, which is not supported on insn.c routines, so still need probes-simulate-insn.c. Please point me if I am missing something here.
> > Thanks, > > Will
| |