perf dsos: Remove __dsos__findnew_link_by_longname_id()

Function was only called in dsos.c with the dso parameter as
NULL. Remove the function and specialize for the dso being NULL case
removing other unused functions along the way.

Signed-off-by: Ian Rogers <irogers@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Cc: Ben Gainey <ben.gainey@arm.com>
Cc: Changbin Du <changbin.du@huawei.com>
Cc: Chengen Du <chengen.du@canonical.com>
Cc: Colin Ian King <colin.i.king@gmail.com>
Cc: Dima Kogan <dima@secretsauce.net>
Cc: Ilkka Koskinen <ilkka@os.amperecomputing.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@arm.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: K Prateek Nayak <kprateek.nayak@amd.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Leo Yan <leo.yan@linux.dev>
Cc: Li Dong <lidong@vivo.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Paran Lee <p4ranlee@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Song Liu <song@kernel.org>
Cc: Sun Haiyong <sunhaiyong@loongson.cn>
Cc: Thomas Richter <tmricht@linux.ibm.com>
Cc: Tiezhu Yang <yangtiezhu@loongson.cn>
Cc: Yanteng Si <siyanteng@loongson.cn>
Cc: zhaimingbing <zhaimingbing@cmss.chinamobile.com>
Link: https://lore.kernel.org/r/20240504213803.218974-4-irogers@google.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Ian Rogers 2024-05-04 14:37:59 -07:00 committed by Arnaldo Carvalho de Melo
parent dfd48165bb
commit 7410d6008d
2 changed files with 10 additions and 47 deletions

View file

@ -119,11 +119,6 @@ static int __dso__cmp_short_name(const char *short_name, struct dso_id *id, stru
return rc ?: dso_id__cmp(id, &b->id);
}
static int dso__cmp_short_name(struct dso *a, struct dso *b)
{
return __dso__cmp_short_name(a->short_name, &a->id, b);
}
static int dsos__cmp_long_name_id_short_name(const void *va, const void *vb)
{
const struct dso *a = *((const struct dso **)va);
@ -143,20 +138,21 @@ static int dsos__cmp_long_name_id_short_name(const void *va, const void *vb)
* Either one of the dso or name parameter must be non-NULL or the
* function will not work.
*/
struct dso *__dsos__findnew_link_by_longname_id(struct dsos *dsos,
struct dso *dso,
const char *name,
struct dso_id *id,
bool write_locked)
static struct dso *__dsos__find_by_longname_id(struct dsos *dsos,
const char *name,
struct dso_id *id,
bool write_locked)
{
int low = 0, high = dsos->cnt - 1;
if (!dsos->sorted) {
if (!write_locked) {
struct dso *dso;
up_read(&dsos->lock);
down_write(&dsos->lock);
dso = __dsos__findnew_link_by_longname_id(dsos, dso, name, id,
/*write_locked=*/true);
dso = __dsos__find_by_longname_id(dsos, name, id,
/*write_locked=*/true);
up_write(&dsos->lock);
down_read(&dsos->lock);
return dso;
@ -166,9 +162,6 @@ struct dso *__dsos__findnew_link_by_longname_id(struct dsos *dsos,
dsos->sorted = true;
}
if (!name)
name = dso->long_name;
/*
* Find node with the matching name
*/
@ -178,31 +171,13 @@ struct dso *__dsos__findnew_link_by_longname_id(struct dsos *dsos,
int rc = __dso__cmp_long_name(name, id, this);
if (rc == 0) {
/*
* In case the new DSO is a duplicate of an existing
* one, print a one-time warning & put the new entry
* at the end of the list of duplicates.
*/
if (!dso || (dso == this))
return dso__get(this); /* Find matching dso */
/*
* The core kernel DSOs may have duplicated long name.
* In this case, the short name should be different.
* Comparing the short names to differentiate the DSOs.
*/
rc = dso__cmp_short_name(dso, this);
if (rc == 0) {
pr_err("Duplicated dso name: %s\n", name);
return NULL;
}
return dso__get(this); /* Find matching dso */
}
if (rc < 0)
high = mid - 1;
else
low = mid + 1;
}
if (dso)
__dsos__add(dsos, dso);
return NULL;
}
@ -240,12 +215,6 @@ int dsos__add(struct dsos *dsos, struct dso *dso)
return ret;
}
static struct dso *__dsos__findnew_by_longname_id(struct dsos *dsos, const char *name,
struct dso_id *id, bool write_locked)
{
return __dsos__findnew_link_by_longname_id(dsos, NULL, name, id, write_locked);
}
struct dsos__find_id_cb_args {
const char *name;
struct dso_id *id;
@ -279,7 +248,7 @@ static struct dso *__dsos__find_id(struct dsos *dsos, const char *name, struct d
__dsos__for_each_dso(dsos, dsos__find_id_cb, &args);
return args.res;
}
res = __dsos__findnew_by_longname_id(dsos, name, id, write_locked);
res = __dsos__find_by_longname_id(dsos, name, id, write_locked);
return res;
}

View file

@ -36,12 +36,6 @@ struct dso *dsos__findnew_id(struct dsos *dsos, const char *name, struct dso_id
bool dsos__read_build_ids(struct dsos *dsos, bool with_hits);
struct dso *__dsos__findnew_link_by_longname_id(struct dsos *dsos,
struct dso *dso,
const char *name,
struct dso_id *id,
bool write_locked);
size_t dsos__fprintf_buildid(struct dsos *dsos, FILE *fp,
bool (skip)(struct dso *dso, int parm), int parm);
size_t dsos__fprintf(struct dsos *dsos, FILE *fp);