Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752203AbbEFNNg (ORCPT ); Wed, 6 May 2015 09:13:36 -0400 Received: from casper.infradead.org ([85.118.1.10]:48834 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752075AbbEFNNa (ORCPT ); Wed, 6 May 2015 09:13:30 -0400 Date: Wed, 6 May 2015 15:13:15 +0200 From: Peter Zijlstra To: Andi Kleen Cc: "Liang, Kan" , "mingo@kernel.org" , "acme@infradead.org" , "eranian@google.com" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH V7 3/6] perf, x86: handle multiple records in PEBS buffer Message-ID: <20150506131315.GA23123@twins.programming.kicks-ass.net> References: <1429517270-8079-1-git-send-email-kan.liang@intel.com> <1429517270-8079-4-git-send-email-kan.liang@intel.com> <20150505131637.GO23123@twins.programming.kicks-ass.net> <37D7C6CF3E00A74B8858931C1DB2F0770180BB27@SHSMSX103.ccr.corp.intel.com> <20150506130116.GM2366@two.firstfloor.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150506130116.GM2366@two.firstfloor.org> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1135 Lines: 28 On Wed, May 06, 2015 at 03:01:16PM +0200, Andi Kleen wrote: > > > > + if (p->status != (1 << bit)) { > > > > + u64 pebs_status; > > > > + > > > > + /* slow path */ > > > > + pebs_status = p->status & cpuc->pebs_enabled; > > > > + pebs_status &= (1ULL << MAX_PEBS_EVENTS) - 1; > > > > + if (pebs_status != (1 << bit)) { > > > > + perf_log_lost(event); > > > > > > Does it make sense to keep an error[bit] count and only log once with the > > > actual number in? -- when !0 obviously. > > > > Yes, will do it. > > If you use anything but u8 for the array member it would be too large > for the NMI stack, and u8 is lilkely overflow prone. Would not do it. If we're so close that 4*8=32 bytes would overflow the stack we're in trouble already. But we could just switch counts[] over to short and have another short array for errors[], that way no extra bytes of stack used. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/