From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753923AbbGWSR0 (ORCPT ); Thu, 23 Jul 2015 14:17:26 -0400 Received: from mail.kernel.org ([198.145.29.136]:59038 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753070AbbGWSRW (ORCPT ); Thu, 23 Jul 2015 14:17:22 -0400 Date: Thu, 23 Jul 2015 15:17:15 -0300 From: Arnaldo Carvalho de Melo To: Steven Rostedt Cc: David Ahern , Adrian Hunter , Borislav Petkov , Frederic Weisbecker , Jiri Olsa , Namhyung Kim , Stephane Eranian , Ingo Molnar , Linux Kernel Mailing List Subject: Re: [RFC PATCH] tools lib traceevent: Allow setting an alternative symbol resolver Message-ID: <20150723181715.GD3154@kernel.org> References: <20150723150433.GA3154@kernel.org> <20150723122130.716df9fe@gandalf.local.home> <20150723172554.GC3154@kernel.org> <20150723141039.1bd48bf2@gandalf.local.home> <20150723141133.4065321e@gandalf.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150723141133.4065321e@gandalf.local.home> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Thu, Jul 23, 2015 at 02:11:33PM -0400, Steven Rostedt escreveu: > On Thu, 23 Jul 2015 14:10:39 -0400 Steven Rostedt wrote: > > On Thu, 23 Jul 2015 14:25:54 -0300 > > Arnaldo Carvalho de Melo wrote: > > > diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c > > > +static struct { > > > + pevent_function_resolver_t *function; > > > + void *priv; > > > +} function_resolver; > > > + > > > +/** > > > + * pevent_set_function_resolver - set an alternative function resolver > > > + * @resolver - function to be used > > > + * @priv - resolver function private state. > > > + * > > > + * Some tools may have already a way to resolve kernel functions, allow them > > > + * to keep using it instead of duplicating all the entries inside pevent->funclist. > > > + */ > > > +void pevent_set_function_resolver(pevent_function_resolver_t *resolver, void *priv) > > > +{ > > > + function_resolver.function = resolver; > > > + function_resolver.priv = priv; > > > > What about passing in pevent, and making the allocation here? > > In fact, we could remove the global function_resolver, and allocate > that here too. Ok, I'll do it, something else? - Arnaldo