From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761391AbbA3KoG (ORCPT ); Fri, 30 Jan 2015 05:44:06 -0500 Received: from mx1.redhat.com ([209.132.183.28]:18718 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1761334AbbA3KoD (ORCPT ); Fri, 30 Jan 2015 05:44:03 -0500 From: Jiri Olsa To: linux-kernel@vger.kernel.org Cc: Wang Nan , Arnaldo Carvalho de Melo , David Ahern , Frederic Weisbecker , Jiri Olsa , Namhyung Kim , Paul Mackerras , Peter Zijlstra , Sebastian Andrzej Siewior , Tom Zanussi Subject: [PATCH 09/11] tools lib traceevent: Add priv field to struct format_field Date: Fri, 30 Jan 2015 11:43:03 +0100 Message-Id: <1422614585-23411-10-git-send-email-jolsa@kernel.org> In-Reply-To: <1422614585-23411-1-git-send-email-jolsa@kernel.org> References: <1422614585-23411-1-git-send-email-jolsa@kernel.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wang Nan Introduce a priv field to 'struct format_field' for futher expansion. (In https://lkml.org/lkml/2015/1/21/383 , Jiri Olsa gives a suggestion about changing lib traceevent to solve a bug of perf-convert-to-ctf, which is related to duplicated field names. I think his suggestion should be something like this patch. ) Signed-off-by: Wang Nan Cc: Arnaldo Carvalho de Melo Cc: David Ahern Cc: Frederic Weisbecker Cc: Jiri Olsa Cc: Namhyung Kim Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Sebastian Andrzej Siewior Cc: Tom Zanussi Signed-off-by: Jiri Olsa --- tools/lib/traceevent/event-parse.c | 2 ++ tools/lib/traceevent/event-parse.h | 2 ++ 2 files changed, 4 insertions(+) diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index afe20ed9fac8..5ed1ad1461c7 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -6237,6 +6237,8 @@ static void free_format_fields(struct format_field *field) free(field->type); free(field->name); free(field); + if (field->destroy_priv) + field->destroy_priv(field); field = next; } } diff --git a/tools/lib/traceevent/event-parse.h b/tools/lib/traceevent/event-parse.h index 7a3873ff9a4f..928d801444ab 100644 --- a/tools/lib/traceevent/event-parse.h +++ b/tools/lib/traceevent/event-parse.h @@ -190,6 +190,8 @@ struct format_field { unsigned int arraylen; unsigned int elementsize; unsigned long flags; + void *priv; + void (*destroy_priv)(struct format_field *); }; struct format { -- 1.9.3