Hi, Here are patches which improve kprobe on arm implementation. This includes some improves ported from x86 for multiple kretprobes on same function and recursing kprobes on FIQ (NMI) path. Also, I've fixed a bug(?) on recursing path.
- [1/3]: Port an improvement (and fix) for recursing kprobe on single-stepping by probing FIQ/NMI context. - [2/3]: Skip single-stepping (and counting nmissed) if the recursing kprobe was hit on a conditional instruction which should not be executed. - [3/3]: Fix to show correct return address with multiple kretprobe events on same function. David, I think arm64 also has some conditinal instructions which should be skipped to handle it and single stepping if the condition is false. Or, user will see the probe events even when the instruction is not executed. Thank you, --- Masami Hiramatsu (3): kprobes/arm: Allow to handle reentered kprobe on single-stepping kprobes/arm: Skip single-stepping in recursing path if possible kprobes/arm: Fix the return address of multiple kretprobes arch/arm/probes/kprobes/core.c | 49 +++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 11 deletions(-) -- Masami Hiramatsu