perf_event: Don't allow vmalloc() backed perf on powerpc
On powerpc the perf event interrupt is not masked when interrupts are disabled, allowing it to function as an NMI. This causes problems if perf is using vmalloc. If we take a page fault on the vmalloc region the fault handler will fail the page fault because it detects we are coming in from an NMI (see do_hash_page()). We don't actually need or want vmalloc backed perf so just disable it on powerpc. Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: <linuxppc-dev@ozlabs.org> Cc: Andrew Morton <akpm@osdl.org> Cc: Anton Blanchard <anton@samba.org> Cc: Borislav Petkov <bp@alien8.de> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: acme@ghostprotocols.net Cc: sukadev@linux.vnet.ibm.com Link: http://lkml.kernel.org/r/1430720799-18426-1-git-send-email-mpe@ellerman.id.au Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
ff303e66c2
commit
cb30711374
|
@ -1637,7 +1637,7 @@ config PERF_EVENTS
|
|||
config DEBUG_PERF_USE_VMALLOC
|
||||
default n
|
||||
bool "Debug: use vmalloc to back perf mmap() buffers"
|
||||
depends on PERF_EVENTS && DEBUG_KERNEL
|
||||
depends on PERF_EVENTS && DEBUG_KERNEL && !PPC
|
||||
select PERF_USE_VMALLOC
|
||||
help
|
||||
Use vmalloc memory to back perf mmap() buffers.
|
||||
|
|
Loading…
Reference in New Issue