From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753987AbbESGnw (ORCPT ); Tue, 19 May 2015 02:43:52 -0400 Received: from LGEMRELSE6Q.lge.com ([156.147.1.121]:38582 "EHLO lgemrelse6q.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752221AbbESGnt (ORCPT ); Tue, 19 May 2015 02:43:49 -0400 X-Original-SENDERIP: 10.177.220.203 X-Original-MAILFROM: namhyung@kernel.org Date: Tue, 19 May 2015 15:34:21 +0900 From: Namhyung Kim To: Jiri Olsa Cc: Arnaldo Carvalho de Melo , Ingo Molnar , Peter Zijlstra , LKML , David Ahern , Adrian Hunter , Andi Kleen , Frederic Weisbecker , Stephane Eranian Subject: Re: [PATCH 06/40] perf tools: Add HEADER_DATA_INDEX feature Message-ID: <20150519063421.GF21663@sejong> References: <1431909055-21442-1-git-send-email-namhyung@kernel.org> <1431909055-21442-7-git-send-email-namhyung@kernel.org> <20150518181723.GC16373@krava.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20150518181723.GC16373@krava.redhat.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 On Mon, May 18, 2015 at 08:17:23PM +0200, Jiri Olsa wrote: > On Mon, May 18, 2015 at 09:30:21AM +0900, Namhyung Kim wrote: > > SNIP > > > > > +static int process_data_index(struct perf_file_section *section __maybe_unused, > > + struct perf_header *ph, int fd, > > + void *data __maybe_unused) > > +{ > > + ssize_t ret; > > + u64 nr_idx; > > + unsigned i; > > + struct perf_file_section *idx; > > + > > + ret = readn(fd, &nr_idx, sizeof(nr_idx)); > > + if (ret != sizeof(nr_idx)) > > + return -1; > > + > > + if (ph->needs_swap) > > + nr_idx = bswap_64(nr_idx); > > + > > + idx = calloc(nr_idx, sizeof(*idx)); > > + if (idx == NULL) > > + return -1; > > + > > + for (i = 0; i < nr_idx; i++) { > > + ret = readn(fd, &idx[i], sizeof(*idx)); > > + if (ret != sizeof(*idx)) > > missing free(idx); You're right. Also it needs to return negative value for error, will update. Thanks, Namhyung > > > + return ret; > > + > > + if (ph->needs_swap) { > > + idx[i].offset = bswap_64(idx[i].offset); > > + idx[i].size = bswap_64(idx[i].size); > > + } > > + } > > + > > + ph->index = idx; > > + ph->nr_index = nr_idx; > > + return 0; > > SNIP > > -- > 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/