Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756291AbZJVUwK (ORCPT ); Thu, 22 Oct 2009 16:52:10 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752731AbZJVUwI (ORCPT ); Thu, 22 Oct 2009 16:52:08 -0400 Received: from hrndva-omtalb.mail.rr.com ([71.74.56.125]:47909 "EHLO hrndva-omtalb.mail.rr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751767AbZJVUwI (ORCPT ); Thu, 22 Oct 2009 16:52:08 -0400 Subject: Re: [PATCH -v4 4/9] tracing: add static function tracer support for MIPS From: Steven Rostedt Reply-To: rostedt@goodmis.org To: Adam Nemet Cc: David Daney , wuzhangjin@gmail.com, Richard Sandiford , linux-kernel@vger.kernel.org, linux-mips@linux-mips.org, Thomas Gleixner , Ralf Baechle , Nicholas Mc Guire In-Reply-To: <19168.49354.525249.654494@ropi.home> References: <028867b99ec532b84963a35e7d552becc783cafc.1256135456.git.wuzhangjin@gmail.com> <2f73eae542c47ac5bbb9f7280e6c0271d193e90d.1256135456.git.wuzhangjin@gmail.com> <3f0d3515f74a58f4cfd11e61b62a129fdc21e3a7.1256135456.git.wuzhangjin@gmail.com> <1256138686.18347.3039.camel@gandalf.stny.rr.com> <1256233679.23653.7.camel@falcon> <4AE0A5BE.8000601@caviumnetworks.com> <19168.49354.525249.654494@ropi.home> Content-Type: text/plain Organization: Kihon Technologies Inc. Date: Thu, 22 Oct 2009 16:52:06 -0400 Message-Id: <1256244726.20866.802.camel@gandalf.stny.rr.com> Mime-Version: 1.0 X-Mailer: Evolution 2.26.3 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1271 Lines: 36 On Thu, 2009-10-22 at 13:30 -0700, Adam Nemet wrote: > Maybe scanning the instructions should stop at the beginning of the function > based on the kernel's symbol table. I am not sure if we can establish any > other stopping condition without affecting performance too much. How would we check the kernel symbol table? Remember, this happens at _every_ function call. > > Speaking of performance, -pg also affects the instruction scheduling freedom > of the compiler in the prologue. With profiling, we limit optimizations not > to move instructions in and out of the prologue. > > Also note that for functions invoked via tail call you won't get an exit > event. E.g. if bar is tail-called from foo: > > foo entered > bar entered > foo/bar exited > > However, this is not MIPS-specific and you can always disable tail calls > with -fno-optimize-sibling-calls. The question is, would bar have a _mcount call? So far, we have not had any issues with this on either x86 nor PPC. /me knocks on wood. -- Steve -- 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/