All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org, Jiri Olsa <jolsa@kernel.org>,
	Adrian Hunter <adrian.hunter@intel.com>,
	Corey Ashford <cjashfor@linux.vnet.ibm.com>,
	David Ahern <dsahern@gmail.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Paul Mackerras <paulus@samba.org>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Stephane Eranian <eranian@google.com>,
	Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: [PATCH 17/19] perf tools: Add dsos__addnew function
Date: Sat, 21 Mar 2015 15:54:36 -0300	[thread overview]
Message-ID: <1426964078-16384-18-git-send-email-acme@kernel.org> (raw)
In-Reply-To: <1426964078-16384-1-git-send-email-acme@kernel.org>

From: Jiri Olsa <jolsa@kernel.org>

Separate the creation of new dso object and its addition to the dsos
list. It will be used in following patch.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-8j43jod97fdt5dwdsushwwae@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/dso.c | 21 ++++++++++++---------
 tools/perf/util/dso.h |  1 +
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/tools/perf/util/dso.c b/tools/perf/util/dso.c
index 3e6863feb066..7a7c54b42b41 100644
--- a/tools/perf/util/dso.c
+++ b/tools/perf/util/dso.c
@@ -1071,21 +1071,24 @@ struct dso *dsos__find(const struct dsos *dsos, const char *name,
 	return dso__find_by_longname(&dsos->root, name);
 }
 
-struct dso *__dsos__findnew(struct dsos *dsos, const char *name)
+struct dso *dsos__addnew(struct dsos *dsos, const char *name)
 {
-	struct dso *dso = dsos__find(dsos, name, false);
+	struct dso *dso = dso__new(name);
 
-	if (!dso) {
-		dso = dso__new(name);
-		if (dso != NULL) {
-			dsos__add(dsos, dso);
-			dso__set_basename(dso);
-		}
+	if (dso != NULL) {
+		dsos__add(dsos, dso);
+		dso__set_basename(dso);
 	}
-
 	return dso;
 }
 
+struct dso *__dsos__findnew(struct dsos *dsos, const char *name)
+{
+	struct dso *dso = dsos__find(dsos, name, false);
+
+	return dso ? dso : dsos__addnew(dsos, name);
+}
+
 size_t __dsos__fprintf_buildid(struct list_head *head, FILE *fp,
 			       bool (skip)(struct dso *dso, int parm), int parm)
 {
diff --git a/tools/perf/util/dso.h b/tools/perf/util/dso.h
index 384cd2918e8f..3c81d8378bc7 100644
--- a/tools/perf/util/dso.h
+++ b/tools/perf/util/dso.h
@@ -264,6 +264,7 @@ struct dso *dso__kernel_findnew(struct machine *machine, const char *name,
 				const char *short_name, int dso_type);
 
 void dsos__add(struct dsos *dsos, struct dso *dso);
+struct dso *dsos__addnew(struct dsos *dsos, const char *name);
 struct dso *dsos__find(const struct dsos *dsos, const char *name,
 		       bool cmp_short);
 struct dso *__dsos__findnew(struct dsos *dsos, const char *name);
-- 
1.9.3


  parent reply	other threads:[~2015-03-21 18:55 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-21 18:54 [GIT PULL 00/19] perf/core improvements and fixes Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 01/19] perf tools: Fix race in build_id_cache__add_s() Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 02/19] perf tools: Don't allow empty argument for field-separator Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 03/19] perf build: Use FEATURE-DUMP instead of PERF-FEATURES in the .gitignore file Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 04/19] perf build: Add config/feature-checks/*.output to " Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 05/19] perf probe: Fix failure to add multiple probes without debuginfo Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 06/19] perf trace: Fix summary_only option Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 07/19] perf build: Fix feature_check name clash Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 08/19] perf build: Separate feature make support into config/Makefile.feature Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 09/19] perf build: Make features checks directory configurable Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 10/19] perf build: Move feature checks code under tools/build Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 11/19] perf trace: Handle legacy syscalls tracepoints Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 12/19] perf hists browser: Indicate which callchain entries are annotated Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 13/19] tools lib traceevent: Add destructor for format_field Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 14/19] tools build: Add feature check for lzma library Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 15/19] perf tools: Add lzma decompression support for kernel module Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 16/19] perf tools: Add kmod_path__parse function Arnaldo Carvalho de Melo
2015-03-21 18:54 ` Arnaldo Carvalho de Melo [this message]
2015-03-21 18:54 ` [PATCH 18/19] perf tools: Add machine__module_dso function Arnaldo Carvalho de Melo
2015-03-21 18:54 ` [PATCH 19/19] perf tools: Use kmod_path__parse for machine__new_dso Arnaldo Carvalho de Melo
2015-03-22  9:58 ` [GIT PULL 00/19] perf/core improvements and fixes Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1426964078-16384-18-git-send-email-acme@kernel.org \
    --to=acme@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@redhat.com \
    --cc=adrian.hunter@intel.com \
    --cc=cjashfor@linux.vnet.ibm.com \
    --cc=dsahern@gmail.com \
    --cc=eranian@google.com \
    --cc=fweisbec@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.