Subject: Re: [PATCH 1/2] oprofile: Add HAVE_OPROFILE_NMI_TIMER

From: Robert Richter <[email-masked]>
Date: Wed, 21 Jan 2015 19:20:15 +0100

On 21.01.15 22:54:08, Anton Blanchard wrote:
> HAVE_PERF_EVENTS_NMI is used for two things - the oprofile NMI timer
> and the hard lockup detector.
> 
> Create HAVE_OPROFILE_NMI_TIMER so an architecture can select them
> separately. On ppc64 we want to add the hard lockup detector, but not
> the oprofile NMI timer fallback.

No, this option should depend on HAVE_PERF_EVENTS_NMI. It uses a perf
counter internally, so if perf supports some sort of 'soft' nmi,
oprofile nmi timer would also work well with it.

I also don't see a reason, why you don't want to support oprofile NMI
timer. Is there any?

> @@ -30,9 +30,12 @@ config OPROFILE_EVENT_MULTIPLEX

>  config OPROFILE_NMI_TIMER
>  	def_bool y
> -	depends on PERF_EVENTS && HAVE_PERF_EVENTS_NMI
> +	depends on PERF_EVENTS && HAVE_OPROFILE_NMI_TIMER

I understand that you might want to disable NMI_TIMER, though I really
don't see a reason if oprofile is enabled and can support it.

If you don't want NMI_TIMER being enabled, then (order of preference):

 * disable it with oprofile (OPROFILE dependency needed for
   NMI_TIMER), or

 * make the default value for NMI_TIMER !PPC64 and add a prompt to let
   the user select/deselect it, or

 * disable OPROFILE_NMI_TIMER by adding a !PPC64 dependency.

-Robert