From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755429AbcITP2O (ORCPT ); Tue, 20 Sep 2016 11:28:14 -0400 Received: from mail.kernel.org ([198.145.29.136]:42582 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754599AbcITP2M (ORCPT ); Tue, 20 Sep 2016 11:28:12 -0400 Date: Tue, 20 Sep 2016 12:28:03 -0300 From: Arnaldo Carvalho de Melo To: Jiri Olsa Cc: lkml , Don Zickus , Joe Mario , Ingo Molnar , Peter Zijlstra , Namhyung Kim , David Ahern , Andi Kleen Subject: Re: [PATCH 01/61] perf symbols: Do not open device files again Message-ID: <20160920152803.GE4973@kernel.org> References: <1474290610-23241-1-git-send-email-jolsa@kernel.org> <1474290610-23241-2-git-send-email-jolsa@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1474290610-23241-2-git-send-email-jolsa@kernel.org> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.7.0 (2016-08-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Mon, Sep 19, 2016 at 03:09:10PM +0200, Jiri Olsa escreveu: > Moving the regular file check into the entry > of the dso__read_binary_type_filename function. > > This way we can eliminate some calls and extend > the file check for all cases. Bzzt: [root@jouet ~]# perf test "Test dso" 8: Test dso data read : FAILED! 9: Test dso data cache : FAILED! 10: Test dso data reopen : FAILED! [root@jouet ~]# git bisect pointed to this patch, removing it for now, haven't tried to fix, please take a look. - Arnaldo > Link: http://lkml.kernel.org/n/tip-np802m7jwzd7fu09vx2tp23y@git.kernel.org > Signed-off-by: Jiri Olsa > --- > tools/perf/util/dso.c | 8 +++----- > tools/perf/util/symbol.c | 3 --- > 2 files changed, 3 insertions(+), 8 deletions(-) > > diff --git a/tools/perf/util/dso.c b/tools/perf/util/dso.c > index 774f6ec884d5..9a027a0cc037 100644 > --- a/tools/perf/util/dso.c > +++ b/tools/perf/util/dso.c > @@ -43,6 +43,9 @@ int dso__read_binary_type_filename(const struct dso *dso, > int ret = 0; > size_t len; > > + if (!is_regular_file(filename)) > + return -1; > + > switch (type) { > case DSO_BINARY_TYPE__DEBUGLINK: { > char *debuglink; > @@ -53,11 +56,6 @@ int dso__read_binary_type_filename(const struct dso *dso, > debuglink--; > if (*debuglink == '/') > debuglink++; > - > - ret = -1; > - if (!is_regular_file(filename)) > - break; > - > ret = filename__read_debuglink(filename, debuglink, > size - (debuglink - filename)); > } > diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c > index 19c9c558454f..827a58ce29f0 100644 > --- a/tools/perf/util/symbol.c > +++ b/tools/perf/util/symbol.c > @@ -1466,9 +1466,6 @@ int dso__load(struct dso *dso, struct map *map) > root_dir, name, PATH_MAX)) > continue; > > - if (!is_regular_file(name)) > - continue; > - > /* Name is now the name of the next image to try */ > if (symsrc__init(ss, dso, name, symtab_type) < 0) > continue; > -- > 2.7.4