Thread (18 messages) 18 messages, 5 authors, 2019-08-23

Re: [PATCH v2 2/3] kprobes: adjust kprobe addr for KPROBES_ON_FTRACE

From: Jisheng Zhang <hidden>
Date: 2019-08-20 10:41:21
Also in: linux-doc, lkml

On Tue, 20 Aug 2019 15:45:24 +0530 "Naveen N. Rao" wrote:

Jisheng Zhang wrote:
quoted
For KPROBES_ON_FTRACE case, we need to adjust the kprobe's addr
correspondingly.

Signed-off-by: Jisheng Zhang <redacted>
---
 kernel/kprobes.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/kernel/kprobes.c b/kernel/kprobes.c
index 9873fc627d61..3fd2f68644da 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -1484,15 +1484,19 @@ static inline int check_kprobe_rereg(struct kprobe *p)

 int __weak arch_check_ftrace_location(struct kprobe *p)
 {
-     unsigned long ftrace_addr;
+     unsigned long ftrace_addr, addr = (unsigned long)p->addr;

-     ftrace_addr = ftrace_location((unsigned long)p->addr);
+#ifdef CONFIG_KPROBES_ON_FTRACE
+     addr = ftrace_call_adjust(addr);
+#endif  
Looking at the commit message for patch 3/3, it looks like you want the
probe to be placed on ftrace entry by default, and this patch seems to
be aimed at that.
Yeah.
If so, this is not the right approach. As I mentioned previously, you
would want to over-ride kprobe_lookup_name(). This ensures that the
address is changed only if the user provided a symbol, and not if the
user wanted to probe at a very specific address. See commit
Great! Now I understand the reason.
24bd909e94776 ("powerpc/kprobes: Prefer ftrace when probing function
entry").
Now, I got your meaning. You are right. I will update the patch in newer
version.

Thanks a lot!
If this patch is for some other purpose, then it isn't clear from the
commit log. Please provide a better explanation.


- Naveen

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help