From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751658AbdFHLyy (ORCPT ); Thu, 8 Jun 2017 07:54:54 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48914 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751637AbdFHLyw (ORCPT ); Thu, 8 Jun 2017 07:54:52 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 8048EE870 Authentication-Results: ext-mx06.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx06.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=jolsa@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 8048EE870 Date: Thu, 8 Jun 2017 13:54:48 +0200 From: Jiri Olsa To: David Carrillo-Cisneros Cc: linux-kernel@vger.kernel.org, Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Alexander Shishkin , Andi Kleen , Simon Que , Wang Nan , Jiri Olsa , He Kuang , Masami Hiramatsu , Stephane Eranian , Paul Turner Subject: Re: [PATCH v3 15/15] perf header: add event desc to pipe-mode header Message-ID: <20170608115448.GD29151@krava> References: <20170606070722.35213-1-davidcc@google.com> <20170606070722.35213-16-davidcc@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170606070722.35213-16-davidcc@google.com> User-Agent: Mutt/1.8.0 (2017-02-23) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Thu, 08 Jun 2017 11:54:51 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jun 06, 2017 at 12:07:22AM -0700, David Carrillo-Cisneros wrote: SNIP > diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c > index 6c1963e5bf10..c91acd5b0838 100644 > --- a/tools/perf/util/header.c > +++ b/tools/perf/util/header.c > @@ -66,6 +66,7 @@ struct feat_fd { > void *buf; /* Either buf != NULL or fd >= 0 */ > ssize_t offset; > size_t size; > + struct perf_evsel *events; > }; > > void perf_header__set_feat(struct perf_header *header, int feat) > @@ -1353,10 +1354,15 @@ static int __desc_attr__fprintf(FILE *fp, const char *name, const char *val, > > static void print_event_desc(struct feat_fd *ff, FILE *fp) > { > - struct perf_evsel *evsel, *events = read_event_desc(ff); > + struct perf_evsel *evsel, *events; > u32 j; > u64 *id; > > + if (ff->events) > + events = ff->events; > + else > + events = read_event_desc(ff); can you read from ff at this point in print callback? jirka