Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758155AbZIOHRW (ORCPT ); Tue, 15 Sep 2009 03:17:22 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1758116AbZIOHRS (ORCPT ); Tue, 15 Sep 2009 03:17:18 -0400 Received: from casper.infradead.org ([85.118.1.10]:42227 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755209AbZIOHRR (ORCPT ); Tue, 15 Sep 2009 03:17:17 -0400 Subject: Re: Warning from ring buffer code (Was: Re: linux-next: tip tree build warning) From: Peter Zijlstra To: Frederic Weisbecker Cc: Steven Rostedt , Christopher Li , Jaswinder Singh Rajput , Ingo Molnar , Stephen Rothwell , Thomas Gleixner , "H. Peter Anvin" , linux-next@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sparse@vger.kernel.org, Josh Triplett In-Reply-To: <20090914184123.GC6045@nowhere> References: <20090804161640.70817ee6.sfr@canb.auug.org.au> <1249403089.4634.139.camel@localhost.localdomain> <20090912165300.9d257283.sfr@canb.auug.org.au> <20090912073906.GA3972@elte.hu> <1252753957.12217.10.camel@ht.satnam> <1252941416.2964.143.camel@localhost.localdomain> <70318cbf0909141009v46581785m4c70edf31fcb79fa@mail.gmail.com> <1252952238.2964.154.camel@localhost.localdomain> <1252952621.31964.0.camel@twins> <1252953076.2964.156.camel@localhost.localdomain> <20090914184123.GC6045@nowhere> Content-Type: text/plain Date: Tue, 15 Sep 2009 09:16:34 +0200 Message-Id: <1252998994.5506.0.camel@laptop> Mime-Version: 1.0 X-Mailer: Evolution 2.26.1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1364 Lines: 33 On Mon, 2009-09-14 at 20:41 +0200, Frederic Weisbecker wrote: > On Mon, Sep 14, 2009 at 02:31:16PM -0400, Steven Rostedt wrote: > > On Mon, 2009-09-14 at 20:23 +0200, Peter Zijlstra wrote: > > > On Mon, 2009-09-14 at 14:17 -0400, Steven Rostedt wrote: > > > > Frederic, how big can one of those events get. The ring buffer (and > > > > TRACE_EVENT) allow up to almost a page size, which is very hefty for the > > > > stack. This code needs to either be rewritten or we need to set a limit > > > > to the size of a profile entry. > > > > > > Yeah, that needs to get a re-write.. I've complained about this when it > > > went in. > > > > One answer is to create a per cpu buffer that is big enough to hold the > > data needed. Then you can disable interrupts an use it without worry. > > > > If you need to also handle NMIs, then create a per_cpu NMI buffer too, > > and use that if "in_nmi()" is true. > > > > -- Steve > > > Looks like a nice idea. > > Peter, does that sound acceptable to you to disable interrupts during a > profiled tracepoint event? It does anyway, a little further down the line, so sure. -- 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/