Re: [PATCH -tip] perf, x86: P4 PMU - Don't forget to clearcpuc->active_mask on overflow

From: Lin Ming
Date: Thu Apr 21 2011 - 02:34:56 EST


On Wed, 2011-04-20 at 23:13 +0800, Cyrill Gorcunov wrote:
> It's not enough to simply disable event on overflow the cpuc->active_mask
> should be cleared as well otherwise counter may stall in "active" even
> in real being already disabled (which potentially may lead to the situation
> that user may not use this counter further).
>
> Signed-off-by: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
> ---
>
> Ming, iirc you were testing this one, but without unknown nmi fix. So
> patch from Don should fix unknown nmi issue, please give this patch a
> shot again if you have some time (Don's patch is here
> https://lkml.org/lkml/2011/4/18/404 but I think you have it already in mailbox).

Tested the 2 patches with nmi watchdog enabled and no unknown nmi was
seen when running perf tool.

Nice.

Thanks,
Lin Ming

>
> arch/x86/kernel/cpu/perf_event_p4.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> Index: linux-2.6.git/arch/x86/kernel/cpu/perf_event_p4.c
> =====================================================================
> --- linux-2.6.git.orig/arch/x86/kernel/cpu/perf_event_p4.c
> +++ linux-2.6.git/arch/x86/kernel/cpu/perf_event_p4.c
> @@ -946,7 +946,7 @@ static int p4_pmu_handle_irq(struct pt_r
> if (!x86_perf_event_set_period(event))
> continue;
> if (perf_event_overflow(event, 1, &data, regs))
> - p4_pmu_disable_event(event);
> + x86_pmu_stop(event, 0);
> }
>
> if (handled) {
>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/