[RFC PATCH v4 34/34] early kprobes: enable optimization of kprobes on ftrace before ftrace is ready.
Wang Nan
wangnan0 at huawei.com
Mon Mar 2 06:25:12 PST 2015
Uses ftrace_process_loc_early() introduced by previous patch to
convert ftrace entries to nops before ftrace_init(). For x86, original
kprobe entries are 'call' and are optimizable only after this conversion.
Signed-off-by: Wang Nan <wangnan0 at huawei.com>
---
kernel/kprobes.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/kernel/kprobes.c b/kernel/kprobes.c
index 56fb8c8..1ec8e6e 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -1602,6 +1602,9 @@ int register_kprobe(struct kprobe *p)
goto out;
}
+ if (p->flags & KPROBE_FLAG_FTRACE_EARLY)
+ ftrace_process_loc_early((unsigned long)p->addr);
+
mutex_lock(&text_mutex); /* Avoiding text modification */
ret = prepare_kprobe(p);
mutex_unlock(&text_mutex);
--
1.8.4
More information about the linux-arm-kernel
mailing list