kprobes: Add arm64 case in kprobe example module
authorSandeepa Prabhu <sandeepa.s.prabhu@gmail.com>
Fri, 8 Jul 2016 16:35:54 +0000 (12:35 -0400)
committerAlex Shi <alex.shi@linaro.org>
Thu, 20 Oct 2016 07:38:13 +0000 (15:38 +0800)
commit af78cede8bfc772baf424fc03f7cd3c8f9437733 upstream.

Add info prints in sample kprobe handlers for ARM64

Signed-off-by: Sandeepa Prabhu <sandeepa.s.prabhu@gmail.com>
Signed-off-by: David A. Long <dave.long@linaro.org>
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
samples/kprobes/kprobe_example.c

index 727eb21c9c5624f2998f321d59db1017339c69a3..83795435bd991b117324424d7a1a2cb2985786ad 100644 (file)
@@ -42,6 +42,11 @@ 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("<%s> pre_handler: p->addr = 0x%p, pc = 0x%lx,"
+                       " pstate = 0x%lx\n",
+               p->symbol_name, p->addr, (long)regs->pc, (long)regs->pstate);
+#endif
 
        /* A dump_stack() here will give a stack backtrace */
        return 0;
@@ -67,6 +72,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("<%s> post_handler: p->addr = 0x%p, pstate = 0x%lx\n",
+               p->symbol_name, p->addr, (long)regs->pstate);
+#endif
 }
 
 /*