summaryrefslogtreecommitdiffstats
path: root/arch/x86/mm
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-11-03 12:42:52 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-11-03 12:42:52 -0700
commita7e1e001f432d5960b929787a2a261cf5a7ddac5 (patch)
treeb340cb74237427dbdbdacf618c42e8b0bd8d21d5 /arch/x86/mm
parent21806261b6cc1068197ea6c8891b857f16260fee (diff)
parent17aacfb9cdf9a8329a6ece9c437551a29c93e47b (diff)
downloadlinux-a7e1e001f432d5960b929787a2a261cf5a7ddac5.tar.gz
linux-a7e1e001f432d5960b929787a2a261cf5a7ddac5.tar.bz2
linux-a7e1e001f432d5960b929787a2a261cf5a7ddac5.zip
Merge branch 'v2.6.24-rc1-lockdep' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep
* 'v2.6.24-rc1-lockdep' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep: lockdep: fix a typo in the __lock_acquire comment sched: fix unconditional irq lock lockdep: fixup irq tracing
Diffstat (limited to 'arch/x86/mm')
-rw-r--r--arch/x86/mm/fault_32.c5
-rw-r--r--arch/x86/mm/fault_64.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/arch/x86/mm/fault_32.c b/arch/x86/mm/fault_32.c
index 33563ee8eb0f..a2273d44aa27 100644
--- a/arch/x86/mm/fault_32.c
+++ b/arch/x86/mm/fault_32.c
@@ -303,6 +303,11 @@ fastcall void __kprobes do_page_fault(struct pt_regs *regs,
int write, si_code;
int fault;
+ /*
+ * We can fault from pretty much anywhere, with unknown IRQ state.
+ */
+ trace_hardirqs_fixup();
+
/* get the address */
address = read_cr2();
diff --git a/arch/x86/mm/fault_64.c b/arch/x86/mm/fault_64.c
index 644b4f7ece10..0e26230669ca 100644
--- a/arch/x86/mm/fault_64.c
+++ b/arch/x86/mm/fault_64.c
@@ -304,6 +304,11 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs,
unsigned long flags;
siginfo_t info;
+ /*
+ * We can fault from pretty much anywhere, with unknown IRQ state.
+ */
+ trace_hardirqs_fixup();
+
tsk = current;
mm = tsk->mm;
prefetchw(&mm->mmap_sem);