summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/kprobes_64.c
diff options
context:
space:
mode:
authorPeter Zijlstra2007-10-25 14:01:10 +0200
committerPeter Zijlstra2007-10-25 14:01:10 +0200
commit143a5d325d35efb1b29dcb8d6031cf27107e183a (patch)
treedef297c7608722df2b5a51e5e6acaacb1aeb1f97 /arch/x86/kernel/kprobes_64.c
parentLinux 2.6.24-rc1 (diff)
downloadkernel-qcow2-linux-143a5d325d35efb1b29dcb8d6031cf27107e183a.tar.gz
kernel-qcow2-linux-143a5d325d35efb1b29dcb8d6031cf27107e183a.tar.xz
kernel-qcow2-linux-143a5d325d35efb1b29dcb8d6031cf27107e183a.zip
lockdep: fixup irq tracing
Ensure we fixup the IRQ state before we hit any locking code. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/kprobes_64.c')
-rw-r--r--arch/x86/kernel/kprobes_64.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/arch/x86/kernel/kprobes_64.c b/arch/x86/kernel/kprobes_64.c
index 681b801c5e26..3db3611933d8 100644
--- a/arch/x86/kernel/kprobes_64.c
+++ b/arch/x86/kernel/kprobes_64.c
@@ -551,12 +551,7 @@ int __kprobes post_kprobe_handler(struct pt_regs *regs)
resume_execution(cur, regs, kcb);
regs->eflags |= kcb->kprobe_saved_rflags;
-#ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
- if (raw_irqs_disabled_flags(regs->eflags))
- trace_hardirqs_off();
- else
- trace_hardirqs_on();
-#endif
+ trace_hardirqs_fixup_flags(regs->eflags);
/* Restore the original saved kprobes variables and continue. */
if (kcb->kprobe_status == KPROBE_REENTER) {