diff mbox

[1/2] perf_event: remove unused DEBUG_PERF_USE_VMALLOC

Message ID 20160830140834.6d1edf7abd9d95c02dae7820@arm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Kim Phillips Aug. 30, 2016, 7:08 p.m. UTC
This 'DEBUG'-prefixed version of PERF_USE_VMALLOC is not used anywhere.
It appears to be leftovers from commit 906010b "perf_event: Provide
vmalloc() based mmap() backing" that introduced it.

Not sure what commit cb30711 "perf_event: Don't allow vmalloc() backed
perf on powerpc" was trying to do with it either.

Signed-off-by: Kim Phillips <kim.phillips@arm.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Michael Ellerman <mpe@ellerman.id.au>
---
 init/Kconfig | 13 -------------
 1 file changed, 13 deletions(-)

Comments

Peter Zijlstra Aug. 31, 2016, 7:04 a.m. UTC | #1
On Tue, Aug 30, 2016 at 02:08:34PM -0500, Kim Phillips wrote:
> This 'DEBUG'-prefixed version of PERF_USE_VMALLOC is not used anywhere.
> It appears to be leftovers from commit 906010b "perf_event: Provide
> vmalloc() based mmap() backing" that introduced it.
> 
> Not sure what commit cb30711 "perf_event: Don't allow vmalloc() backed
> perf on powerpc" was trying to do with it either.
> 
> Signed-off-by: Kim Phillips <kim.phillips@arm.com>
> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> ---
>  init/Kconfig | 13 -------------
>  1 file changed, 13 deletions(-)
> 
> diff --git a/init/Kconfig b/init/Kconfig
> index cac3f09..934a61f 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -1707,19 +1707,6 @@ config PERF_EVENTS
>  
>  	  Say Y if unsure.
>  
> -config DEBUG_PERF_USE_VMALLOC
> -	default n
> -	bool "Debug: use vmalloc to back perf mmap() buffers"
> -	depends on PERF_EVENTS && DEBUG_KERNEL && !PPC
> -	select PERF_USE_VMALLOC

^^^^^


It forces the use of vmalloc backed pages for the ring-buffer so that we
can test that code on x86, which otherwise doesn't use it.
Michael Ellerman Sept. 10, 2016, 10:27 a.m. UTC | #2
Kim Phillips <kim.phillips@arm.com> writes:

> This 'DEBUG'-prefixed version of PERF_USE_VMALLOC is not used anywhere.
> It appears to be leftovers from commit 906010b "perf_event: Provide
> vmalloc() based mmap() backing" that introduced it.
>
> Not sure what commit cb30711 "perf_event: Don't allow vmalloc() backed
> perf on powerpc" was trying to do with it either.

Preventing its use on powerpc, because it doesn't work, I thought the
change log was pretty clear:

    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.


If there are ARM cpus that don't want it enabled then you should
probably do a similar patch for ARM.

cheers
diff mbox

Patch

diff --git a/init/Kconfig b/init/Kconfig
index cac3f09..934a61f 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1707,19 +1707,6 @@  config PERF_EVENTS
 
 	  Say Y if unsure.
 
-config DEBUG_PERF_USE_VMALLOC
-	default n
-	bool "Debug: use vmalloc to back perf mmap() buffers"
-	depends on PERF_EVENTS && DEBUG_KERNEL && !PPC
-	select PERF_USE_VMALLOC
-	help
-	 Use vmalloc memory to back perf mmap() buffers.
-
-	 Mostly useful for debugging the vmalloc code on platforms
-	 that don't require it.
-
-	 Say N if unsure.
-
 endmenu
 
 config VM_EVENT_COUNTERS