Messages in this thread | | | Date | Tue, 17 Nov 2015 16:35:35 +0000 (UTC) | From | Mathieu Desnoyers <> | Subject | trace: trace_kprobe.c always shows interrupts off |
| |
Hi,
I notice that trace_kprobe.c does local_save_flags() within __kprobe_trace_func(), which is called (at least on x86) with interrupts always disabled. This is then used as interrupt on/off state within the recorded event, which is misleading.
I also don't understand why arch/x86/kernel/kprobes/ftrace.c pre handler disables interrupts, considering the following comment above arch/x86/kernel/kprobes/core.c: kprobe_int3_handler()
* Interrupts are disabled on entry as trap3 is an interrupt gate and they * remain disabled throughout this function.
A struct pt_regs is received by this function, but I don't see any way to get the state of irq enable/disable from struct pt_regs across architectures.
Any thoughts on how to fix this ?
Thanks,
Mathieu
-- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com
| |