Message ID | 1461783185-9056-11-git-send-email-dave.long@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Apr 27, 2016 at 02:53:05PM -0400, David Long wrote: > From: Sandeepa Prabhu <sandeepa.s.prabhu@gmail.com> > > Add info prints in sample kprobe handlers for ARM64 > > Signed-off-by: Sandeepa Prabhu <sandeepa.s.prabhu@gmail.com> > --- > samples/kprobes/kprobe_example.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/samples/kprobes/kprobe_example.c b/samples/kprobes/kprobe_example.c > index 727eb21..0c72b8a 100644 > --- a/samples/kprobes/kprobe_example.c > +++ b/samples/kprobes/kprobe_example.c > @@ -42,6 +42,10 @@ static int handler_pre(struct kprobe *p, struct pt_regs *regs) > " ex1 = 0x%lx\n", > p->addr, regs->pc, regs->ex1); > #endif > +#ifdef CONFIG_ARM64 > + pr_info("pre_handler: p->addr = 0x%p, pc = 0x%lx\n", I think you miss the KERN_INFO here. > + p->addr, (long)regs->pc); > +#endif > > /* A dump_stack() here will give a stack backtrace */ > return 0; > @@ -67,6 +71,10 @@ static void handler_post(struct kprobe *p, struct pt_regs *regs, > printk(KERN_INFO "post_handler: p->addr = 0x%p, ex1 = 0x%lx\n", > p->addr, regs->ex1); > #endif > +#ifdef CONFIG_ARM64 > + pr_info("post_handler: p->addr = 0x%p, pc = 0x%lx\n", ditto. > + p->addr, (long)regs->pc); > +#endif thanks Huang Shijie
On Tue, May 17, 2016 at 05:57:33PM +0800, Huang Shijie wrote: > On Wed, Apr 27, 2016 at 02:53:05PM -0400, David Long wrote: > > +#ifdef CONFIG_ARM64 > > + pr_info("pre_handler: p->addr = 0x%p, pc = 0x%lx\n", > I think you miss the KERN_INFO here. That's what pr_info() does over printk() - it adds the KERN_INFO more cleanly.
On Tue, May 17, 2016 at 11:24:27AM +0100, Mark Brown wrote: > On Tue, May 17, 2016 at 05:57:33PM +0800, Huang Shijie wrote: > > On Wed, Apr 27, 2016 at 02:53:05PM -0400, David Long wrote: > > > > +#ifdef CONFIG_ARM64 > > > + pr_info("pre_handler: p->addr = 0x%p, pc = 0x%lx\n", > > > I think you miss the KERN_INFO here. > > That's what pr_info() does over printk() - it adds the KERN_INFO more > cleanly. sorry, I thought the "pr_info" to "printk" when I first read this code. thanks Huang Shijie
diff --git a/samples/kprobes/kprobe_example.c b/samples/kprobes/kprobe_example.c index 727eb21..0c72b8a 100644 --- a/samples/kprobes/kprobe_example.c +++ b/samples/kprobes/kprobe_example.c @@ -42,6 +42,10 @@ static int handler_pre(struct kprobe *p, struct pt_regs *regs) " ex1 = 0x%lx\n", p->addr, regs->pc, regs->ex1); #endif +#ifdef CONFIG_ARM64 + pr_info("pre_handler: p->addr = 0x%p, pc = 0x%lx\n", + p->addr, (long)regs->pc); +#endif /* A dump_stack() here will give a stack backtrace */ return 0; @@ -67,6 +71,10 @@ static void handler_post(struct kprobe *p, struct pt_regs *regs, printk(KERN_INFO "post_handler: p->addr = 0x%p, ex1 = 0x%lx\n", p->addr, regs->ex1); #endif +#ifdef CONFIG_ARM64 + pr_info("post_handler: p->addr = 0x%p, pc = 0x%lx\n", + p->addr, (long)regs->pc); +#endif } /*