]> err.no Git - linux-2.6/commit
x86: optimize page faults like all other achitectures and kill notifier cruft
authorChristoph Hellwig <hch@lst.de>
Tue, 16 Oct 2007 08:24:07 +0000 (01:24 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Tue, 16 Oct 2007 16:42:50 +0000 (09:42 -0700)
commit74a0b5762713a26496db72eac34fbbed46f20fce
tree4a14df7c07ebc16283454f33713519a0e10b5c43
parentd5a7430ddcdb598261d70f7eb1bf450b5be52085
x86: optimize page faults like all other achitectures and kill notifier cruft

x86(-64) are the last architectures still using the page fault notifier
cruft for the kprobes page fault hook.  This patch converts them to the
proper direct calls, and removes the now unused pagefault notifier bits
aswell as the cruft in kprobes.c that was related to this mess.

I know Andi didn't really like this, but all other architecture maintainers
agreed the direct calls are much better and besides the obvious cruft
removal a common way of dealing with kprobes across architectures is
important aswell.

[akpm@linux-foundation.org: build fix]
[akpm@linux-foundation.org: fix sparc64]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: Andi Kleen <ak@suse.de>
Cc: <linux-arch@vger.kernel.org>
Cc: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
20 files changed:
arch/x86/kernel/kprobes_32.c
arch/x86/kernel/kprobes_64.c
arch/x86/mm/fault_32.c
arch/x86/mm/fault_64.c
include/asm-avr32/kdebug.h
include/asm-avr32/kprobes.h
include/asm-ia64/kdebug.h
include/asm-ia64/kprobes.h
include/asm-powerpc/kdebug.h
include/asm-powerpc/kprobes.h
include/asm-s390/kdebug.h
include/asm-s390/kprobes.h
include/asm-sh/kdebug.h
include/asm-sparc64/kdebug.h
include/asm-sparc64/kprobes.h
include/asm-x86/kdebug_32.h
include/asm-x86/kdebug_64.h
include/asm-x86/kprobes_32.h
include/asm-x86/kprobes_64.h
kernel/kprobes.c