From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?ISO-8859-1?Q?Fr=E9d=E9ric_Weisbecker?= Subject: Re: Warning from ring buffer code (Was: Re: linux-next: tip tree build warning) Date: Tue, 15 Sep 2009 11:01:15 +0200 Message-ID: References: <20090804161640.70817ee6.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> <1252998994.5506.0.camel@laptop> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Return-path: Received: from mail-fx0-f217.google.com ([209.85.220.217]:64952 "EHLO mail-fx0-f217.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750909AbZIOJBO (ORCPT ); Tue, 15 Sep 2009 05:01:14 -0400 In-Reply-To: <1252998994.5506.0.camel@laptop> Sender: linux-sparse-owner@vger.kernel.org List-Id: linux-sparse@vger.kernel.org To: Peter Zijlstra 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 2009/9/15, Peter Zijlstra : > 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. Ok I'll fix it soon using Steve's idea then. Thanks.