From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755611Ab0FXOiz (ORCPT ); Thu, 24 Jun 2010 10:38:55 -0400 Received: from bombadil.infradead.org ([18.85.46.34]:59409 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755472Ab0FXOiv (ORCPT ); Thu, 24 Jun 2010 10:38:51 -0400 Message-Id: <20100624143406.648945135@chello.nl> User-Agent: quilt/0.47-1 Date: Thu, 24 Jun 2010 16:28:07 +0200 From: Peter Zijlstra To: paulus , stephane eranian , Robert Richter , Will Deacon , Paul Mundt , Frederic Weisbecker , Cyrill Gorcunov , Lin Ming , Yanmin , Deng-Cheng Zhu , David Miller Cc: linux-kernel@vger.kernel.org, Peter Zijlstra Subject: [PATCH 03/11] perf, sparc64: Fix maybe_change_configuration() PCR setting. References: <20100624142804.431553874@chello.nl> Content-Disposition: inline; filename=davem-sparc-pmu-fixup.patch Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: David S. Miller Need to mask out the existing event bits before OR'ing in the new ones. Reported-by: Peter Zijlstra Signed-off-by: David S. Miller Signed-off-by: Peter Zijlstra --- arch/sparc/kernel/perf_event.c | 1 + 1 file changed, 1 insertion(+) Index: linux-2.6/arch/sparc/kernel/perf_event.c =================================================================== --- linux-2.6.orig/arch/sparc/kernel/perf_event.c +++ linux-2.6/arch/sparc/kernel/perf_event.c @@ -657,6 +657,7 @@ static u64 maybe_change_configuration(st cpuc->current_idx[i] = idx; enc = perf_event_get_enc(cpuc->events[i]); + pcr &= ~mask_for_index(idx); pcr |= event_encoding(enc, idx); } out: