dso               152 tools/perf/arch/powerpc/util/skip-callchain-idx.c static int check_return_addr(struct dso *dso, u64 map_start, Dwarf_Addr pc)
dso               162 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	const char	*exec_file = dso->long_name;
dso               164 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	dwfl = dso->dwfl;
dso               186 tools/perf/arch/powerpc/util/skip-callchain-idx.c 		dso->dwfl = dwfl;
dso               245 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	struct dso *dso = NULL;
dso               258 tools/perf/arch/powerpc/util/skip-callchain-idx.c 		dso = al.map->dso;
dso               260 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	if (!dso) {
dso               265 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	rc = check_return_addr(dso, al.map->start, ip);
dso               268 tools/perf/arch/powerpc/util/skip-callchain-idx.c 				dso->long_name, al.sym->name, ip, rc);
dso               117 tools/perf/arch/powerpc/util/sym-handling.c 	if (map->dso->symtab_type == DSO_BINARY_TYPE__KALLSYMS)
dso                71 tools/perf/arch/x86/util/machine.c 				      struct dso *kernel)
dso               202 tools/perf/builtin-annotate.c 		a.map->dso->hit = 1;
dso               236 tools/perf/builtin-annotate.c 				 &al->map->dso->symbols);
dso               238 tools/perf/builtin-annotate.c 			dso__reset_find_symbol_cache(al->map->dso);
dso               320 tools/perf/builtin-annotate.c 		if (he->ms.sym == NULL || he->ms.map->dso->annotate_warned)
dso               274 tools/perf/builtin-buildid-cache.c static bool dso__missing_buildid_cache(struct dso *dso, int parm __maybe_unused)
dso               279 tools/perf/builtin-buildid-cache.c 	if (dso__build_id_filename(dso, filename, sizeof(filename), false) &&
dso               287 tools/perf/builtin-buildid-cache.c 	} else if (memcmp(dso->build_id, build_id, sizeof(dso->build_id))) {
dso                47 tools/perf/builtin-buildid-list.c static bool dso__skip_buildid(struct dso *dso, int with_hits)
dso                49 tools/perf/builtin-buildid-list.c 	return with_hits && !dso->hit;
dso              1807 tools/perf/builtin-c2c.c 		hpp_list->dso = 1;
dso               388 tools/perf/builtin-inject.c static int dso__read_build_id(struct dso *dso)
dso               390 tools/perf/builtin-inject.c 	if (dso->has_build_id)
dso               393 tools/perf/builtin-inject.c 	if (filename__read_build_id(dso->long_name, dso->build_id,
dso               394 tools/perf/builtin-inject.c 				    sizeof(dso->build_id)) > 0) {
dso               395 tools/perf/builtin-inject.c 		dso->has_build_id = true;
dso               402 tools/perf/builtin-inject.c static int dso__inject_build_id(struct dso *dso, struct perf_tool *tool,
dso               408 tools/perf/builtin-inject.c 	if (dso__read_build_id(dso) < 0) {
dso               409 tools/perf/builtin-inject.c 		pr_debug("no build_id found for %s\n", dso->long_name);
dso               413 tools/perf/builtin-inject.c 	if (dso->kernel)
dso               416 tools/perf/builtin-inject.c 	err = perf_event__synthesize_build_id(tool, dso, misc, perf_event__repipe,
dso               419 tools/perf/builtin-inject.c 		pr_err("Can't synthesize build_id event for %s\n", dso->long_name);
dso               443 tools/perf/builtin-inject.c 		if (!al.map->dso->hit) {
dso               444 tools/perf/builtin-inject.c 			al.map->dso->hit = 1;
dso               446 tools/perf/builtin-inject.c 				dso__inject_build_id(al.map->dso, tool, machine);
dso               455 tools/perf/builtin-inject.c 					   al.map->dso->long_name);
dso                39 tools/perf/builtin-kallsyms.c 			symbol->name, map->dso->short_name, map->dso->long_name,
dso               172 tools/perf/builtin-mem.c 		al.map->dso->hit = 1;
dso               200 tools/perf/builtin-mem.c 			al.map ? (al.map->dso ? al.map->dso->long_name : "???") : "???",
dso               225 tools/perf/builtin-mem.c 			al.map ? (al.map->dso ? al.map->dso->long_name : "???") : "???",
dso               290 tools/perf/builtin-report.c 		al.map->dso->hit = 1;
dso               533 tools/perf/builtin-report.c 	    (kernel_map->dso->hit &&
dso               741 tools/perf/builtin-report.c 				   map->ino, map->dso->name);
dso               845 tools/perf/builtin-script.c 		    !alf.map->dso->adjust_symbols)
dso               849 tools/perf/builtin-script.c 		    !alt.map->dso->adjust_symbols)
dso               912 tools/perf/builtin-script.c 	if (!thread__find_map(thread, *cpumode, start, &al) || !al.map->dso) {
dso               916 tools/perf/builtin-script.c 	if (al.map->dso->data.status == DSO_DATA_STATUS_ERROR) {
dso               925 tools/perf/builtin-script.c 	len = dso__data_read_offset(al.map->dso, machine, offset, (u8 *)buffer,
dso               928 tools/perf/builtin-script.c 	*is64bit = al.map->dso->is_64_bit;
dso               126 tools/perf/builtin-top.c 	if (map->dso->symtab_type == DSO_BINARY_TYPE__KALLSYMS &&
dso               127 tools/perf/builtin-top.c 	    !dso__is_kcore(map->dso)) {
dso               179 tools/perf/builtin-top.c 		    ip, map->dso->long_name, dso__symtab_origin(map->dso),
dso               800 tools/perf/builtin-top.c 				dso__strerror_load(al.map->dso, serr, sizeof(serr));
dso              2439 tools/perf/builtin-trace.c 		fprintf(f, "%s@", al->map->dso->long_name);
dso               250 tools/perf/tests/code-reading.c 	if (!thread__find_map(thread, cpumode, addr, &al) || !al.map->dso) {
dso               260 tools/perf/tests/code-reading.c 	pr_debug("File is: %s\n", al.map->dso->long_name);
dso               262 tools/perf/tests/code-reading.c 	if (al.map->dso->symtab_type == DSO_BINARY_TYPE__KALLSYMS &&
dso               263 tools/perf/tests/code-reading.c 	    !dso__is_kcore(al.map->dso)) {
dso               278 tools/perf/tests/code-reading.c 	ret_len = dso__data_read_offset(al.map->dso, thread->mg->machine,
dso               293 tools/perf/tests/code-reading.c 	if (dso__is_kcore(al.map->dso)) {
dso               310 tools/perf/tests/code-reading.c 	objdump_name = al.map->dso->long_name;
dso               311 tools/perf/tests/code-reading.c 	if (dso__needs_decompress(al.map->dso)) {
dso               312 tools/perf/tests/code-reading.c 		if (dso__decompress_kmodule_path(al.map->dso, objdump_name,
dso               340 tools/perf/tests/code-reading.c 			} else if (dso__is_kcore(al.map->dso)) {
dso               598 tools/perf/tests/code-reading.c 	have_vmlinux = dso__is_vmlinux(map->dso);
dso               599 tools/perf/tests/code-reading.c 	have_kcore = dso__is_kcore(map->dso);
dso               106 tools/perf/tests/dso-data.c static int dso__data_fd(struct dso *dso, struct machine *machine)
dso               108 tools/perf/tests/dso-data.c 	int fd = dso__data_get_fd(dso, machine);
dso               111 tools/perf/tests/dso-data.c 		dso__data_put_fd(dso);
dso               119 tools/perf/tests/dso-data.c 	struct dso *dso;
dso               127 tools/perf/tests/dso-data.c 	dso = dso__new((const char *)file);
dso               130 tools/perf/tests/dso-data.c 			dso__data_fd(dso, &machine) >= 0);
dso               139 tools/perf/tests/dso-data.c 		size = dso__data_read_offset(dso, &machine, data->offset,
dso               158 tools/perf/tests/dso-data.c 			size = dso__data_read_offset(dso, &machine, 10,
dso               172 tools/perf/tests/dso-data.c 	dso__put(dso);
dso               202 tools/perf/tests/dso-data.c static struct dso **dsos;
dso               229 tools/perf/tests/dso-data.c 		struct dso *dso = dsos[i];
dso               231 tools/perf/tests/dso-data.c 		unlink(dso->name);
dso               232 tools/perf/tests/dso-data.c 		dso__put(dso);
dso               272 tools/perf/tests/dso-data.c 		struct dso *dso = dsos[i];
dso               278 tools/perf/tests/dso-data.c 		fd = dso__data_fd(dso, &machine);
dso               286 tools/perf/tests/dso-data.c 			n = dso__data_read_offset(dso, &machine, 0, buf, BUFSIZE);
dso               129 tools/perf/tests/hists_common.c 		struct dso *dso;
dso               131 tools/perf/tests/hists_common.c 		dso = machine__findnew_dso(machine, fake_symbols[i].dso_name);
dso               132 tools/perf/tests/hists_common.c 		if (dso == NULL)
dso               136 tools/perf/tests/hists_common.c 		dso__set_loaded(dso);
dso               145 tools/perf/tests/hists_common.c 				dso__put(dso);
dso               149 tools/perf/tests/hists_common.c 			symbols__insert(&dso->symbols, sym);
dso               152 tools/perf/tests/hists_common.c 		dso__put(dso);
dso               184 tools/perf/tests/hists_common.c 				he->ms.map->dso->short_name,
dso               211 tools/perf/tests/hists_common.c 				he->ms.map->dso->short_name,
dso               153 tools/perf/tests/hists_cumulate.c #define DSO(he)   (he->ms.map->dso->short_name)
dso               158 tools/perf/tests/hists_cumulate.c #define CDSO(cl)  (cl->ms.map->dso->short_name)
dso               165 tools/perf/tests/hists_cumulate.c 	const char *dso;
dso               172 tools/perf/tests/hists_cumulate.c 		const char *dso;
dso               212 tools/perf/tests/hists_cumulate.c 				!strcmp(DSO(he), expected[i].dso) &&
dso               234 tools/perf/tests/hists_cumulate.c 				!strcmp(CDSO(clist), expected_callchain[i].node[c].dso) &&
dso               197 tools/perf/tests/hists_filter.c 		hists->dso_filter = fake_samples[0].map->dso;
dso               291 tools/perf/tests/hists_filter.c 		hists->dso_filter = fake_samples[1].map->dso;
dso               119 tools/perf/tests/hists_output.c #define DSO(he)   (he->ms.map->dso->short_name)
dso                25 tools/perf/tests/map_groups.c 		TEST_ASSERT_VAL("wrong map name",  !strcmp(map->dso->name, merged[i].name));
dso               194 tools/perf/tests/vmlinux-kallsyms.c 						(map->dso->kernel ?
dso               195 tools/perf/tests/vmlinux-kallsyms.c 							map->dso->short_name :
dso               196 tools/perf/tests/vmlinux-kallsyms.c 							map->dso->name));
dso               227 tools/perf/tests/vmlinux-kallsyms.c 				map->start, map->end, map->pgoff, map->dso->name);
dso               231 tools/perf/tests/vmlinux-kallsyms.c 			pr_info(" %s\n", pair->dso->name);
dso               396 tools/perf/ui/browsers/annotate.c 	return snprintf(title, sz, "%s  %s [Percent: %s]", sym->name, map->dso->long_name,
dso               918 tools/perf/ui/browsers/annotate.c 	if (map->dso->annotate_warned)
dso              2405 tools/perf/ui/browsers/hists.c 	if (sym == NULL || map->dso->annotate_warned)
dso              2484 tools/perf/ui/browsers/hists.c 	if (!hists__has(browser->hists, dso) || map == NULL)
dso              2494 tools/perf/ui/browsers/hists.c 				   __map__is_kernel(map) ? "the Kernel" : map->dso->short_name);
dso              2495 tools/perf/ui/browsers/hists.c 		browser->hists->dso_filter = map->dso;
dso              2509 tools/perf/ui/browsers/hists.c 	if (!hists__has(browser->hists, dso) || map == NULL)
dso              2514 tools/perf/ui/browsers/hists.c 		     __map__is_kernel(map) ? "the Kernel" : map->dso->short_name) < 0)
dso              2534 tools/perf/ui/browsers/hists.c 	if (!hists__has(browser->hists, dso) || map == NULL)
dso              2942 tools/perf/ui/browsers/hists.c 			    browser->selection->map->dso->annotate_warned)
dso                79 tools/perf/ui/browsers/map.c 	if (ui_browser__show(&browser->b, browser->map->dso->long_name,
dso               109 tools/perf/ui/browsers/map.c 			.entries = &map->dso->symbols,
dso               173 tools/perf/ui/gtk/annotate.c 	if (map->dso->annotate_warned)
dso              1603 tools/perf/util/annotate.c 	struct dso *dso = map->dso;
dso              1617 tools/perf/util/annotate.c 		if (dso->has_build_id) {
dso              1618 tools/perf/util/annotate.c 			build_id__sprintf(dso->build_id,
dso              1619 tools/perf/util/annotate.c 					  sizeof(dso->build_id), bf + 15);
dso              1641 tools/perf/util/annotate.c 		scnprintf(buf, buflen, "Invalid BPF file: %s.", dso->long_name);
dso              1645 tools/perf/util/annotate.c 			  dso->long_name);
dso              1655 tools/perf/util/annotate.c static int dso__disassemble_filename(struct dso *dso, char *filename, size_t filename_size)
dso              1662 tools/perf/util/annotate.c 	if (dso->symtab_type == DSO_BINARY_TYPE__KALLSYMS &&
dso              1663 tools/perf/util/annotate.c 	    !dso__is_kcore(dso))
dso              1666 tools/perf/util/annotate.c 	build_id_filename = dso__build_id_filename(dso, NULL, 0, false);
dso              1671 tools/perf/util/annotate.c 		if (dso->has_build_id)
dso              1689 tools/perf/util/annotate.c 	if (dso__is_kcore(dso) ||
dso              1699 tools/perf/util/annotate.c 		__symbol__join_symfs(filename, filename_size, dso->long_name);
dso              1723 tools/perf/util/annotate.c 	struct dso *dso = map->dso;
dso              1734 tools/perf/util/annotate.c 	if (dso->binary_type != DSO_BINARY_TYPE__BPF_PROG_INFO)
dso              1758 tools/perf/util/annotate.c 	info_node = perf_env__find_bpf_prog_info(dso->bpf_prog.env,
dso              1759 tools/perf/util/annotate.c 						 dso->bpf_prog.id);
dso              1765 tools/perf/util/annotate.c 	sub_id = dso->bpf_prog.sub_id;
dso              1776 tools/perf/util/annotate.c 		node = perf_env__find_btf(dso->bpf_prog.env,
dso              1864 tools/perf/util/annotate.c 	struct dso *dso = map->dso;
dso              1875 tools/perf/util/annotate.c 	int err = dso__disassemble_filename(dso, symfs_filename, sizeof(symfs_filename));
dso              1885 tools/perf/util/annotate.c 		 dso, dso->long_name, sym, sym->name);
dso              1887 tools/perf/util/annotate.c 	if (dso->binary_type == DSO_BINARY_TYPE__BPF_PROG_INFO) {
dso              1889 tools/perf/util/annotate.c 	} else if (dso__is_kcore(dso)) {
dso              1899 tools/perf/util/annotate.c 	} else if (dso__needs_decompress(dso)) {
dso              1902 tools/perf/util/annotate.c 		if (dso__decompress_kmodule_path(dso, symfs_filename,
dso              1983 tools/perf/util/annotate.c 	if (dso__is_kcore(dso))
dso              2270 tools/perf/util/annotate.c 	struct dso *dso = map->dso;
dso              2286 tools/perf/util/annotate.c 	filename = strdup(dso->long_name);
dso              2453 tools/perf/util/annotate.c 		ms->sym->name, ms->map->dso->long_name, ev_name);
dso              2665 tools/perf/util/annotate.c 		al->path = get_srcline(map->dso, notes->start + al->offset, NULL,
dso              2686 tools/perf/util/annotate.c 	struct dso *dso = map->dso;
dso              2697 tools/perf/util/annotate.c 		print_summary(&source_line, dso->long_name);
dso              2702 tools/perf/util/annotate.c 		buf, percent_type_str(opts->percent_type), sym->name, dso->long_name);
dso              2714 tools/perf/util/annotate.c 	struct dso *dso = map->dso;
dso              2725 tools/perf/util/annotate.c 		print_summary(&source_line, dso->long_name);
dso              1920 tools/perf/util/auxtrace.c static struct dso *load_dso(const char *name)
dso              1923 tools/perf/util/auxtrace.c 	struct dso *dso;
dso              1932 tools/perf/util/auxtrace.c 	dso = dso__get(map->dso);
dso              1936 tools/perf/util/auxtrace.c 	return dso;
dso              1949 tools/perf/util/auxtrace.c static void print_duplicate_syms(struct dso *dso, const char *sym_name)
dso              1957 tools/perf/util/auxtrace.c 	sym = dso__first_symbol(dso);
dso              1978 tools/perf/util/auxtrace.c static int find_dso_sym(struct dso *dso, const char *sym_name, u64 *start,
dso              1987 tools/perf/util/auxtrace.c 	sym = dso__first_symbol(dso);
dso              1996 tools/perf/util/auxtrace.c 				print_duplicate_syms(dso, sym_name);
dso              2012 tools/perf/util/auxtrace.c static int addr_filter__entire_dso(struct addr_filter *filt, struct dso *dso)
dso              2014 tools/perf/util/auxtrace.c 	if (dso__data_file_size(dso, NULL)) {
dso              2021 tools/perf/util/auxtrace.c 	filt->size = dso->data.file_size;
dso              2029 tools/perf/util/auxtrace.c 	struct dso *dso;
dso              2038 tools/perf/util/auxtrace.c 	dso = load_dso(filt->filename);
dso              2039 tools/perf/util/auxtrace.c 	if (!dso) {
dso              2045 tools/perf/util/auxtrace.c 		err = addr_filter__entire_dso(filt, dso);
dso              2050 tools/perf/util/auxtrace.c 		err = find_dso_sym(dso, filt->sym_from, &start, &size,
dso              2060 tools/perf/util/auxtrace.c 		err = find_dso_sym(dso, filt->sym_to, &start, &size,
dso              2073 tools/perf/util/auxtrace.c 	dso__put(dso);
dso                60 tools/perf/util/bpf-event.c 			map->dso->binary_type = DSO_BINARY_TYPE__BPF_PROG_INFO;
dso                61 tools/perf/util/bpf-event.c 			map->dso->bpf_prog.id = id;
dso                62 tools/perf/util/bpf-event.c 			map->dso->bpf_prog.sub_id = i;
dso                63 tools/perf/util/bpf-event.c 			map->dso->bpf_prog.env = env;
dso                56 tools/perf/util/build-id.c 		al.map->dso->hit = 1;
dso               258 tools/perf/util/build-id.c char *dso__build_id_filename(const struct dso *dso, char *bf, size_t size,
dso               261 tools/perf/util/build-id.c 	bool is_kallsyms = dso__is_kallsyms((struct dso *)dso);
dso               262 tools/perf/util/build-id.c 	bool is_vdso = dso__is_vdso((struct dso *)dso);
dso               268 tools/perf/util/build-id.c 	if (!dso->has_build_id)
dso               271 tools/perf/util/build-id.c 	build_id__sprintf(dso->build_id, sizeof(dso->build_id), sbuild_id);
dso               323 tools/perf/util/build-id.c 	struct dso *pos;
dso               384 tools/perf/util/build-id.c 	struct dso *pos;
dso               815 tools/perf/util/build-id.c static int dso__cache_build_id(struct dso *dso, struct machine *machine)
dso               817 tools/perf/util/build-id.c 	bool is_kallsyms = dso__is_kallsyms(dso);
dso               818 tools/perf/util/build-id.c 	bool is_vdso = dso__is_vdso(dso);
dso               819 tools/perf/util/build-id.c 	const char *name = dso->long_name;
dso               821 tools/perf/util/build-id.c 	if (dso__is_kcore(dso)) {
dso               825 tools/perf/util/build-id.c 	return build_id_cache__add_b(dso->build_id, sizeof(dso->build_id), name,
dso               826 tools/perf/util/build-id.c 				     dso->nsinfo, is_kallsyms, is_vdso);
dso               832 tools/perf/util/build-id.c 	struct dso *pos;
dso                14 tools/perf/util/build-id.h struct dso;
dso                23 tools/perf/util/build-id.h char *dso__build_id_filename(const struct dso *dso, char *bf, size_t size,
dso               698 tools/perf/util/callchain.c 	struct dso *left_dso = left_map ? left_map->dso : NULL;
dso               699 tools/perf/util/callchain.c 	struct dso *right_dso = right_map ? right_map->dso : NULL;
dso              1170 tools/perf/util/callchain.c 			  cl->ms.map->dso->short_name :
dso               665 tools/perf/util/cs-etm.c 	if (!thread__find_map(thread, cpumode, address, &al) || !al.map->dso)
dso               668 tools/perf/util/cs-etm.c 	if (al.map->dso->data.status == DSO_DATA_STATUS_ERROR &&
dso               669 tools/perf/util/cs-etm.c 	    dso__data_status_seen(al.map->dso, DSO_DATA_STATUS_SEEN_ITRACE))
dso               676 tools/perf/util/cs-etm.c 	len = dso__data_read_offset(al.map->dso, machine, offset, buffer, size);
dso               146 tools/perf/util/db-export.c int db_export__dso(struct db_export *dbe, struct dso *dso,
dso               149 tools/perf/util/db-export.c 	if (dso->db_id)
dso               152 tools/perf/util/db-export.c 	dso->db_id = ++dbe->dso_last_db_id;
dso               155 tools/perf/util/db-export.c 		return dbe->export_dso(dbe, dso, machine);
dso               161 tools/perf/util/db-export.c 		      struct dso *dso)
dso               171 tools/perf/util/db-export.c 		return dbe->export_symbol(dbe, sym, dso);
dso               182 tools/perf/util/db-export.c 		struct dso *dso = al->map->dso;
dso               184 tools/perf/util/db-export.c 		err = db_export__dso(dbe, dso, al->machine);
dso               187 tools/perf/util/db-export.c 		*dso_db_id = dso->db_id;
dso               192 tools/perf/util/db-export.c 				dso__insert_symbol(dso, al->sym);
dso               198 tools/perf/util/db-export.c 			err = db_export__symbol(dbe, al->sym, dso);
dso               258 tools/perf/util/db-export.c 			al.sym = dso__find_symbol(al.map->dso, al.addr);
dso                17 tools/perf/util/db-export.h struct dso;
dso                50 tools/perf/util/db-export.h 	int (*export_dso)(struct db_export *dbe, struct dso *dso,
dso                53 tools/perf/util/db-export.h 			     struct dso *dso);
dso                92 tools/perf/util/db-export.h int db_export__dso(struct db_export *dbe, struct dso *dso,
dso                95 tools/perf/util/db-export.h 		      struct dso *dso);
dso                39 tools/perf/util/dso.c char dso__symtab_origin(const struct dso *dso)
dso                61 tools/perf/util/dso.c 	if (dso == NULL || dso->symtab_type == DSO_BINARY_TYPE__NOT_FOUND)
dso                63 tools/perf/util/dso.c 	return origin[dso->symtab_type];
dso                66 tools/perf/util/dso.c int dso__read_binary_type_filename(const struct dso *dso,
dso                82 tools/perf/util/dso.c 		len = __symbol__join_symfs(filename, size, dso->long_name);
dso               113 tools/perf/util/dso.c 		if (dso__build_id_filename(dso, filename, size, false) == NULL)
dso               118 tools/perf/util/dso.c 		if (dso__build_id_filename(dso, filename, size, true) == NULL)
dso               124 tools/perf/util/dso.c 		snprintf(filename + len, size - len, "%s.debug", dso->long_name);
dso               129 tools/perf/util/dso.c 		snprintf(filename + len, size - len, "%s", dso->long_name);
dso               137 tools/perf/util/dso.c 		last_slash = dso->long_name + dso->long_name_len;
dso               138 tools/perf/util/dso.c 		while (last_slash != dso->long_name && *last_slash != '/')
dso               142 tools/perf/util/dso.c 		dir_size = last_slash - dso->long_name + 2;
dso               147 tools/perf/util/dso.c 		len += scnprintf(filename + len, dir_size, "%s",  dso->long_name);
dso               154 tools/perf/util/dso.c 		if (!dso->has_build_id) {
dso               159 tools/perf/util/dso.c 		build_id__sprintf(dso->build_id,
dso               160 tools/perf/util/dso.c 				  sizeof(dso->build_id),
dso               170 tools/perf/util/dso.c 		__symbol__join_symfs(filename, size, dso->long_name);
dso               176 tools/perf/util/dso.c 			    root_dir, dso->long_name);
dso               181 tools/perf/util/dso.c 		__symbol__join_symfs(filename, size, dso->long_name);
dso               186 tools/perf/util/dso.c 		snprintf(filename, size, "%s", dso->long_name);
dso               258 tools/perf/util/dso.c bool dso__needs_decompress(struct dso *dso)
dso               260 tools/perf/util/dso.c 	return dso->symtab_type == DSO_BINARY_TYPE__SYSTEM_PATH_KMODULE_COMP ||
dso               261 tools/perf/util/dso.c 		dso->symtab_type == DSO_BINARY_TYPE__GUEST_KMODULE_COMP;
dso               264 tools/perf/util/dso.c static int decompress_kmodule(struct dso *dso, const char *name,
dso               270 tools/perf/util/dso.c 	if (!dso__needs_decompress(dso))
dso               273 tools/perf/util/dso.c 	if (dso->comp == COMP_ID__NONE)
dso               289 tools/perf/util/dso.c 	if (!compressions[dso->comp].is_compressed(name))
dso               294 tools/perf/util/dso.c 		dso->load_errno = errno;
dso               298 tools/perf/util/dso.c 	if (compressions[dso->comp].decompress(name, fd)) {
dso               299 tools/perf/util/dso.c 		dso->load_errno = DSO_LOAD_ERRNO__DECOMPRESSION_FAILURE;
dso               313 tools/perf/util/dso.c int dso__decompress_kmodule_fd(struct dso *dso, const char *name)
dso               315 tools/perf/util/dso.c 	return decompress_kmodule(dso, name, NULL, 0);
dso               318 tools/perf/util/dso.c int dso__decompress_kmodule_path(struct dso *dso, const char *name,
dso               321 tools/perf/util/dso.c 	int fd = decompress_kmodule(dso, name, pathname, len);
dso               407 tools/perf/util/dso.c void dso__set_module_info(struct dso *dso, struct kmod_path *m,
dso               411 tools/perf/util/dso.c 		dso->symtab_type = DSO_BINARY_TYPE__SYSTEM_PATH_KMODULE;
dso               413 tools/perf/util/dso.c 		dso->symtab_type = DSO_BINARY_TYPE__GUEST_KMODULE;
dso               417 tools/perf/util/dso.c 		dso->symtab_type++;
dso               418 tools/perf/util/dso.c 		dso->comp = m->comp;
dso               421 tools/perf/util/dso.c 	dso__set_short_name(dso, strdup(m->name), true);
dso               431 tools/perf/util/dso.c static void dso__list_add(struct dso *dso)
dso               433 tools/perf/util/dso.c 	list_add_tail(&dso->data.open_entry, &dso__data_open);
dso               437 tools/perf/util/dso.c static void dso__list_del(struct dso *dso)
dso               439 tools/perf/util/dso.c 	list_del_init(&dso->data.open_entry);
dso               468 tools/perf/util/dso.c static int __open_dso(struct dso *dso, struct machine *machine)
dso               481 tools/perf/util/dso.c 	if (dso__read_binary_type_filename(dso, dso->binary_type,
dso               488 tools/perf/util/dso.c 	if (dso__needs_decompress(dso)) {
dso               492 tools/perf/util/dso.c 		if (dso__decompress_kmodule_path(dso, name, newpath, len) < 0) {
dso               493 tools/perf/util/dso.c 			fd = -dso->load_errno;
dso               520 tools/perf/util/dso.c static int open_dso(struct dso *dso, struct machine *machine)
dso               525 tools/perf/util/dso.c 	if (dso->binary_type != DSO_BINARY_TYPE__BUILD_ID_CACHE)
dso               526 tools/perf/util/dso.c 		nsinfo__mountns_enter(dso->nsinfo, &nsc);
dso               527 tools/perf/util/dso.c 	fd = __open_dso(dso, machine);
dso               528 tools/perf/util/dso.c 	if (dso->binary_type != DSO_BINARY_TYPE__BUILD_ID_CACHE)
dso               532 tools/perf/util/dso.c 		dso__list_add(dso);
dso               543 tools/perf/util/dso.c static void close_data_fd(struct dso *dso)
dso               545 tools/perf/util/dso.c 	if (dso->data.fd >= 0) {
dso               546 tools/perf/util/dso.c 		close(dso->data.fd);
dso               547 tools/perf/util/dso.c 		dso->data.fd = -1;
dso               548 tools/perf/util/dso.c 		dso->data.file_size = 0;
dso               549 tools/perf/util/dso.c 		dso__list_del(dso);
dso               560 tools/perf/util/dso.c static void close_dso(struct dso *dso)
dso               562 tools/perf/util/dso.c 	close_data_fd(dso);
dso               567 tools/perf/util/dso.c 	struct dso *dso;
dso               569 tools/perf/util/dso.c 	dso = list_first_entry(&dso__data_open, struct dso, data.open_entry);
dso               570 tools/perf/util/dso.c 	close_dso(dso);
dso               634 tools/perf/util/dso.c void dso__data_close(struct dso *dso)
dso               637 tools/perf/util/dso.c 	close_dso(dso);
dso               641 tools/perf/util/dso.c static void try_to_open_dso(struct dso *dso, struct machine *machine)
dso               650 tools/perf/util/dso.c 	if (dso->data.fd >= 0)
dso               653 tools/perf/util/dso.c 	if (dso->binary_type != DSO_BINARY_TYPE__NOT_FOUND) {
dso               654 tools/perf/util/dso.c 		dso->data.fd = open_dso(dso, machine);
dso               659 tools/perf/util/dso.c 		dso->binary_type = binary_type_data[i++];
dso               661 tools/perf/util/dso.c 		dso->data.fd = open_dso(dso, machine);
dso               662 tools/perf/util/dso.c 		if (dso->data.fd >= 0)
dso               665 tools/perf/util/dso.c 	} while (dso->binary_type != DSO_BINARY_TYPE__NOT_FOUND);
dso               667 tools/perf/util/dso.c 	if (dso->data.fd >= 0)
dso               668 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_OK;
dso               670 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_ERROR;
dso               682 tools/perf/util/dso.c int dso__data_get_fd(struct dso *dso, struct machine *machine)
dso               684 tools/perf/util/dso.c 	if (dso->data.status == DSO_DATA_STATUS_ERROR)
dso               690 tools/perf/util/dso.c 	try_to_open_dso(dso, machine);
dso               692 tools/perf/util/dso.c 	if (dso->data.fd < 0)
dso               695 tools/perf/util/dso.c 	return dso->data.fd;
dso               698 tools/perf/util/dso.c void dso__data_put_fd(struct dso *dso __maybe_unused)
dso               703 tools/perf/util/dso.c bool dso__data_status_seen(struct dso *dso, enum dso_data_status_seen by)
dso               707 tools/perf/util/dso.c 	if (dso->data.status_seen & flag)
dso               710 tools/perf/util/dso.c 	dso->data.status_seen |= flag;
dso               715 tools/perf/util/dso.c static ssize_t bpf_read(struct dso *dso, u64 offset, char *data)
dso               722 tools/perf/util/dso.c 	node = perf_env__find_bpf_prog_info(dso->bpf_prog.env, dso->bpf_prog.id);
dso               724 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_ERROR;
dso               739 tools/perf/util/dso.c static int bpf_size(struct dso *dso)
dso               743 tools/perf/util/dso.c 	node = perf_env__find_bpf_prog_info(dso->bpf_prog.env, dso->bpf_prog.id);
dso               745 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_ERROR;
dso               749 tools/perf/util/dso.c 	dso->data.file_size = node->info_linear->info.jited_prog_len;
dso               754 tools/perf/util/dso.c dso_cache__free(struct dso *dso)
dso               756 tools/perf/util/dso.c 	struct rb_root *root = &dso->data.cache;
dso               759 tools/perf/util/dso.c 	pthread_mutex_lock(&dso->lock);
dso               768 tools/perf/util/dso.c 	pthread_mutex_unlock(&dso->lock);
dso               771 tools/perf/util/dso.c static struct dso_cache *dso_cache__find(struct dso *dso, u64 offset)
dso               773 tools/perf/util/dso.c 	const struct rb_root *root = &dso->data.cache;
dso               797 tools/perf/util/dso.c dso_cache__insert(struct dso *dso, struct dso_cache *new)
dso               799 tools/perf/util/dso.c 	struct rb_root *root = &dso->data.cache;
dso               805 tools/perf/util/dso.c 	pthread_mutex_lock(&dso->lock);
dso               826 tools/perf/util/dso.c 	pthread_mutex_unlock(&dso->lock);
dso               841 tools/perf/util/dso.c static ssize_t file_read(struct dso *dso, struct machine *machine,
dso               852 tools/perf/util/dso.c 	try_to_open_dso(dso, machine);
dso               854 tools/perf/util/dso.c 	if (dso->data.fd < 0) {
dso               855 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_ERROR;
dso               860 tools/perf/util/dso.c 	ret = pread(dso->data.fd, data, DSO__DATA_CACHE_SIZE, offset);
dso               867 tools/perf/util/dso.c dso_cache__read(struct dso *dso, struct machine *machine,
dso               879 tools/perf/util/dso.c 	if (dso->binary_type == DSO_BINARY_TYPE__BPF_PROG_INFO)
dso               880 tools/perf/util/dso.c 		ret = bpf_read(dso, cache_offset, cache->data);
dso               882 tools/perf/util/dso.c 		ret = file_read(dso, machine, cache_offset, cache->data);
dso               888 tools/perf/util/dso.c 		old = dso_cache__insert(dso, cache);
dso               904 tools/perf/util/dso.c static ssize_t dso_cache_read(struct dso *dso, struct machine *machine,
dso               909 tools/perf/util/dso.c 	cache = dso_cache__find(dso, offset);
dso               913 tools/perf/util/dso.c 		return dso_cache__read(dso, machine, offset, data, size);
dso               921 tools/perf/util/dso.c static ssize_t cached_read(struct dso *dso, struct machine *machine,
dso               930 tools/perf/util/dso.c 		ret = dso_cache_read(dso, machine, offset, p, size);
dso               950 tools/perf/util/dso.c static int file_size(struct dso *dso, struct machine *machine)
dso               962 tools/perf/util/dso.c 	try_to_open_dso(dso, machine);
dso               964 tools/perf/util/dso.c 	if (dso->data.fd < 0) {
dso               966 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_ERROR;
dso               970 tools/perf/util/dso.c 	if (fstat(dso->data.fd, &st) < 0) {
dso               974 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_ERROR;
dso               977 tools/perf/util/dso.c 	dso->data.file_size = st.st_size;
dso               984 tools/perf/util/dso.c int dso__data_file_size(struct dso *dso, struct machine *machine)
dso               986 tools/perf/util/dso.c 	if (dso->data.file_size)
dso               989 tools/perf/util/dso.c 	if (dso->data.status == DSO_DATA_STATUS_ERROR)
dso               992 tools/perf/util/dso.c 	if (dso->binary_type == DSO_BINARY_TYPE__BPF_PROG_INFO)
dso               993 tools/perf/util/dso.c 		return bpf_size(dso);
dso               995 tools/perf/util/dso.c 	return file_size(dso, machine);
dso              1005 tools/perf/util/dso.c off_t dso__data_size(struct dso *dso, struct machine *machine)
dso              1007 tools/perf/util/dso.c 	if (dso__data_file_size(dso, machine))
dso              1011 tools/perf/util/dso.c 	return dso->data.file_size;
dso              1014 tools/perf/util/dso.c static ssize_t data_read_offset(struct dso *dso, struct machine *machine,
dso              1017 tools/perf/util/dso.c 	if (dso__data_file_size(dso, machine))
dso              1021 tools/perf/util/dso.c 	if (offset > dso->data.file_size)
dso              1027 tools/perf/util/dso.c 	return cached_read(dso, machine, offset, data, size);
dso              1041 tools/perf/util/dso.c ssize_t dso__data_read_offset(struct dso *dso, struct machine *machine,
dso              1044 tools/perf/util/dso.c 	if (dso->data.status == DSO_DATA_STATUS_ERROR)
dso              1047 tools/perf/util/dso.c 	return data_read_offset(dso, machine, offset, data, size);
dso              1060 tools/perf/util/dso.c ssize_t dso__data_read_addr(struct dso *dso, struct map *map,
dso              1065 tools/perf/util/dso.c 	return dso__data_read_offset(dso, machine, offset, data, size);
dso              1071 tools/perf/util/dso.c 	struct dso *dso = dso__new(name);
dso              1073 tools/perf/util/dso.c 	if (dso)
dso              1074 tools/perf/util/dso.c 		map = map__new2(0, dso);
dso              1079 tools/perf/util/dso.c struct dso *machine__findnew_kernel(struct machine *machine, const char *name,
dso              1085 tools/perf/util/dso.c 	struct dso *dso = machine__findnew_dso(machine, name);
dso              1091 tools/perf/util/dso.c 	if (dso != NULL) {
dso              1092 tools/perf/util/dso.c 		dso__set_short_name(dso, short_name, false);
dso              1093 tools/perf/util/dso.c 		dso->kernel = dso_type;
dso              1096 tools/perf/util/dso.c 	return dso;
dso              1099 tools/perf/util/dso.c void dso__set_long_name(struct dso *dso, const char *name, bool name_allocated)
dso              1101 tools/perf/util/dso.c 	struct rb_root *root = dso->root;
dso              1106 tools/perf/util/dso.c 	if (dso->long_name_allocated)
dso              1107 tools/perf/util/dso.c 		free((char *)dso->long_name);
dso              1110 tools/perf/util/dso.c 		rb_erase(&dso->rb_node, root);
dso              1115 tools/perf/util/dso.c 		RB_CLEAR_NODE(&dso->rb_node);
dso              1116 tools/perf/util/dso.c 		dso->root = NULL;
dso              1119 tools/perf/util/dso.c 	dso->long_name		 = name;
dso              1120 tools/perf/util/dso.c 	dso->long_name_len	 = strlen(name);
dso              1121 tools/perf/util/dso.c 	dso->long_name_allocated = name_allocated;
dso              1124 tools/perf/util/dso.c 		__dsos__findnew_link_by_longname(root, dso, NULL);
dso              1127 tools/perf/util/dso.c void dso__set_short_name(struct dso *dso, const char *name, bool name_allocated)
dso              1132 tools/perf/util/dso.c 	if (dso->short_name_allocated)
dso              1133 tools/perf/util/dso.c 		free((char *)dso->short_name);
dso              1135 tools/perf/util/dso.c 	dso->short_name		  = name;
dso              1136 tools/perf/util/dso.c 	dso->short_name_len	  = strlen(name);
dso              1137 tools/perf/util/dso.c 	dso->short_name_allocated = name_allocated;
dso              1140 tools/perf/util/dso.c int dso__name_len(const struct dso *dso)
dso              1142 tools/perf/util/dso.c 	if (!dso)
dso              1145 tools/perf/util/dso.c 		return dso->long_name_len;
dso              1147 tools/perf/util/dso.c 	return dso->short_name_len;
dso              1150 tools/perf/util/dso.c bool dso__loaded(const struct dso *dso)
dso              1152 tools/perf/util/dso.c 	return dso->loaded;
dso              1155 tools/perf/util/dso.c bool dso__sorted_by_name(const struct dso *dso)
dso              1157 tools/perf/util/dso.c 	return dso->sorted_by_name;
dso              1160 tools/perf/util/dso.c void dso__set_sorted_by_name(struct dso *dso)
dso              1162 tools/perf/util/dso.c 	dso->sorted_by_name = true;
dso              1165 tools/perf/util/dso.c struct dso *dso__new(const char *name)
dso              1167 tools/perf/util/dso.c 	struct dso *dso = calloc(1, sizeof(*dso) + strlen(name) + 1);
dso              1169 tools/perf/util/dso.c 	if (dso != NULL) {
dso              1170 tools/perf/util/dso.c 		strcpy(dso->name, name);
dso              1171 tools/perf/util/dso.c 		dso__set_long_name(dso, dso->name, false);
dso              1172 tools/perf/util/dso.c 		dso__set_short_name(dso, dso->name, false);
dso              1173 tools/perf/util/dso.c 		dso->symbols = dso->symbol_names = RB_ROOT_CACHED;
dso              1174 tools/perf/util/dso.c 		dso->data.cache = RB_ROOT;
dso              1175 tools/perf/util/dso.c 		dso->inlined_nodes = RB_ROOT_CACHED;
dso              1176 tools/perf/util/dso.c 		dso->srclines = RB_ROOT_CACHED;
dso              1177 tools/perf/util/dso.c 		dso->data.fd = -1;
dso              1178 tools/perf/util/dso.c 		dso->data.status = DSO_DATA_STATUS_UNKNOWN;
dso              1179 tools/perf/util/dso.c 		dso->symtab_type = DSO_BINARY_TYPE__NOT_FOUND;
dso              1180 tools/perf/util/dso.c 		dso->binary_type = DSO_BINARY_TYPE__NOT_FOUND;
dso              1181 tools/perf/util/dso.c 		dso->is_64_bit = (sizeof(void *) == 8);
dso              1182 tools/perf/util/dso.c 		dso->loaded = 0;
dso              1183 tools/perf/util/dso.c 		dso->rel = 0;
dso              1184 tools/perf/util/dso.c 		dso->sorted_by_name = 0;
dso              1185 tools/perf/util/dso.c 		dso->has_build_id = 0;
dso              1186 tools/perf/util/dso.c 		dso->has_srcline = 1;
dso              1187 tools/perf/util/dso.c 		dso->a2l_fails = 1;
dso              1188 tools/perf/util/dso.c 		dso->kernel = DSO_TYPE_USER;
dso              1189 tools/perf/util/dso.c 		dso->needs_swap = DSO_SWAP__UNSET;
dso              1190 tools/perf/util/dso.c 		dso->comp = COMP_ID__NONE;
dso              1191 tools/perf/util/dso.c 		RB_CLEAR_NODE(&dso->rb_node);
dso              1192 tools/perf/util/dso.c 		dso->root = NULL;
dso              1193 tools/perf/util/dso.c 		INIT_LIST_HEAD(&dso->node);
dso              1194 tools/perf/util/dso.c 		INIT_LIST_HEAD(&dso->data.open_entry);
dso              1195 tools/perf/util/dso.c 		pthread_mutex_init(&dso->lock, NULL);
dso              1196 tools/perf/util/dso.c 		refcount_set(&dso->refcnt, 1);
dso              1199 tools/perf/util/dso.c 	return dso;
dso              1202 tools/perf/util/dso.c void dso__delete(struct dso *dso)
dso              1204 tools/perf/util/dso.c 	if (!RB_EMPTY_NODE(&dso->rb_node))
dso              1206 tools/perf/util/dso.c 		       dso->long_name);
dso              1209 tools/perf/util/dso.c 	inlines__tree_delete(&dso->inlined_nodes);
dso              1210 tools/perf/util/dso.c 	srcline__tree_delete(&dso->srclines);
dso              1211 tools/perf/util/dso.c 	symbols__delete(&dso->symbols);
dso              1213 tools/perf/util/dso.c 	if (dso->short_name_allocated) {
dso              1214 tools/perf/util/dso.c 		zfree((char **)&dso->short_name);
dso              1215 tools/perf/util/dso.c 		dso->short_name_allocated = false;
dso              1218 tools/perf/util/dso.c 	if (dso->long_name_allocated) {
dso              1219 tools/perf/util/dso.c 		zfree((char **)&dso->long_name);
dso              1220 tools/perf/util/dso.c 		dso->long_name_allocated = false;
dso              1223 tools/perf/util/dso.c 	dso__data_close(dso);
dso              1224 tools/perf/util/dso.c 	auxtrace_cache__free(dso->auxtrace_cache);
dso              1225 tools/perf/util/dso.c 	dso_cache__free(dso);
dso              1226 tools/perf/util/dso.c 	dso__free_a2l(dso);
dso              1227 tools/perf/util/dso.c 	zfree(&dso->symsrc_filename);
dso              1228 tools/perf/util/dso.c 	nsinfo__zput(dso->nsinfo);
dso              1229 tools/perf/util/dso.c 	pthread_mutex_destroy(&dso->lock);
dso              1230 tools/perf/util/dso.c 	free(dso);
dso              1233 tools/perf/util/dso.c struct dso *dso__get(struct dso *dso)
dso              1235 tools/perf/util/dso.c 	if (dso)
dso              1236 tools/perf/util/dso.c 		refcount_inc(&dso->refcnt);
dso              1237 tools/perf/util/dso.c 	return dso;
dso              1240 tools/perf/util/dso.c void dso__put(struct dso *dso)
dso              1242 tools/perf/util/dso.c 	if (dso && refcount_dec_and_test(&dso->refcnt))
dso              1243 tools/perf/util/dso.c 		dso__delete(dso);
dso              1246 tools/perf/util/dso.c void dso__set_build_id(struct dso *dso, void *build_id)
dso              1248 tools/perf/util/dso.c 	memcpy(dso->build_id, build_id, sizeof(dso->build_id));
dso              1249 tools/perf/util/dso.c 	dso->has_build_id = 1;
dso              1252 tools/perf/util/dso.c bool dso__build_id_equal(const struct dso *dso, u8 *build_id)
dso              1254 tools/perf/util/dso.c 	return memcmp(dso->build_id, build_id, sizeof(dso->build_id)) == 0;
dso              1257 tools/perf/util/dso.c void dso__read_running_kernel_build_id(struct dso *dso, struct machine *machine)
dso              1264 tools/perf/util/dso.c 	if (sysfs__read_build_id(path, dso->build_id,
dso              1265 tools/perf/util/dso.c 				 sizeof(dso->build_id)) == 0)
dso              1266 tools/perf/util/dso.c 		dso->has_build_id = true;
dso              1269 tools/perf/util/dso.c int dso__kernel_module_get_build_id(struct dso *dso,
dso              1277 tools/perf/util/dso.c 	const char *name = dso->short_name + 1;
dso              1283 tools/perf/util/dso.c 	if (sysfs__read_build_id(filename, dso->build_id,
dso              1284 tools/perf/util/dso.c 				 sizeof(dso->build_id)) == 0)
dso              1285 tools/perf/util/dso.c 		dso->has_build_id = true;
dso              1290 tools/perf/util/dso.c size_t dso__fprintf_buildid(struct dso *dso, FILE *fp)
dso              1294 tools/perf/util/dso.c 	build_id__sprintf(dso->build_id, sizeof(dso->build_id), sbuild_id);
dso              1298 tools/perf/util/dso.c size_t dso__fprintf(struct dso *dso, FILE *fp)
dso              1301 tools/perf/util/dso.c 	size_t ret = fprintf(fp, "dso: %s (", dso->short_name);
dso              1303 tools/perf/util/dso.c 	if (dso->short_name != dso->long_name)
dso              1304 tools/perf/util/dso.c 		ret += fprintf(fp, "%s, ", dso->long_name);
dso              1305 tools/perf/util/dso.c 	ret += fprintf(fp, "%sloaded, ", dso__loaded(dso) ? "" : "NOT ");
dso              1306 tools/perf/util/dso.c 	ret += dso__fprintf_buildid(dso, fp);
dso              1308 tools/perf/util/dso.c 	for (nd = rb_first_cached(&dso->symbols); nd; nd = rb_next(nd)) {
dso              1316 tools/perf/util/dso.c enum dso_type dso__type(struct dso *dso, struct machine *machine)
dso              1321 tools/perf/util/dso.c 	fd = dso__data_get_fd(dso, machine);
dso              1324 tools/perf/util/dso.c 		dso__data_put_fd(dso);
dso              1330 tools/perf/util/dso.c int dso__strerror_load(struct dso *dso, char *buf, size_t buflen)
dso              1332 tools/perf/util/dso.c 	int idx, errnum = dso->load_errno;
dso               100 tools/perf/util/dso.h #define DSO__SWAP(dso, type, val)			\
dso               103 tools/perf/util/dso.h 	BUG_ON(dso->needs_swap == DSO_SWAP__UNSET);	\
dso               104 tools/perf/util/dso.h 	if (dso->needs_swap == DSO_SWAP__YES) {		\
dso               209 tools/perf/util/dso.h #define dso__for_each_symbol(dso, pos, n)	\
dso               210 tools/perf/util/dso.h 	symbols__for_each_entry(&(dso)->symbols, pos, n)
dso               212 tools/perf/util/dso.h static inline void dso__set_loaded(struct dso *dso)
dso               214 tools/perf/util/dso.h 	dso->loaded = true;
dso               217 tools/perf/util/dso.h struct dso *dso__new(const char *name);
dso               218 tools/perf/util/dso.h void dso__delete(struct dso *dso);
dso               220 tools/perf/util/dso.h void dso__set_short_name(struct dso *dso, const char *name, bool name_allocated);
dso               221 tools/perf/util/dso.h void dso__set_long_name(struct dso *dso, const char *name, bool name_allocated);
dso               223 tools/perf/util/dso.h int dso__name_len(const struct dso *dso);
dso               225 tools/perf/util/dso.h struct dso *dso__get(struct dso *dso);
dso               226 tools/perf/util/dso.h void dso__put(struct dso *dso);
dso               228 tools/perf/util/dso.h static inline void __dso__zput(struct dso **dso)
dso               230 tools/perf/util/dso.h 	dso__put(*dso);
dso               231 tools/perf/util/dso.h 	*dso = NULL;
dso               234 tools/perf/util/dso.h #define dso__zput(dso) __dso__zput(&dso)
dso               236 tools/perf/util/dso.h bool dso__loaded(const struct dso *dso);
dso               238 tools/perf/util/dso.h static inline bool dso__has_symbols(const struct dso *dso)
dso               240 tools/perf/util/dso.h 	return !RB_EMPTY_ROOT(&dso->symbols.rb_root);
dso               243 tools/perf/util/dso.h bool dso__sorted_by_name(const struct dso *dso);
dso               244 tools/perf/util/dso.h void dso__set_sorted_by_name(struct dso *dso);
dso               245 tools/perf/util/dso.h void dso__sort_by_name(struct dso *dso);
dso               247 tools/perf/util/dso.h void dso__set_build_id(struct dso *dso, void *build_id);
dso               248 tools/perf/util/dso.h bool dso__build_id_equal(const struct dso *dso, u8 *build_id);
dso               249 tools/perf/util/dso.h void dso__read_running_kernel_build_id(struct dso *dso,
dso               251 tools/perf/util/dso.h int dso__kernel_module_get_build_id(struct dso *dso, const char *root_dir);
dso               253 tools/perf/util/dso.h char dso__symtab_origin(const struct dso *dso);
dso               254 tools/perf/util/dso.h int dso__read_binary_type_filename(const struct dso *dso, enum dso_binary_type type,
dso               257 tools/perf/util/dso.h bool dso__needs_decompress(struct dso *dso);
dso               258 tools/perf/util/dso.h int dso__decompress_kmodule_fd(struct dso *dso, const char *name);
dso               259 tools/perf/util/dso.h int dso__decompress_kmodule_path(struct dso *dso, const char *name,
dso               277 tools/perf/util/dso.h void dso__set_module_info(struct dso *dso, struct kmod_path *m,
dso               323 tools/perf/util/dso.h int dso__data_get_fd(struct dso *dso, struct machine *machine);
dso               324 tools/perf/util/dso.h void dso__data_put_fd(struct dso *dso);
dso               325 tools/perf/util/dso.h void dso__data_close(struct dso *dso);
dso               327 tools/perf/util/dso.h int dso__data_file_size(struct dso *dso, struct machine *machine);
dso               328 tools/perf/util/dso.h off_t dso__data_size(struct dso *dso, struct machine *machine);
dso               329 tools/perf/util/dso.h ssize_t dso__data_read_offset(struct dso *dso, struct machine *machine,
dso               331 tools/perf/util/dso.h ssize_t dso__data_read_addr(struct dso *dso, struct map *map,
dso               334 tools/perf/util/dso.h bool dso__data_status_seen(struct dso *dso, enum dso_data_status_seen by);
dso               337 tools/perf/util/dso.h struct dso *machine__findnew_kernel(struct machine *machine, const char *name,
dso               340 tools/perf/util/dso.h void dso__reset_find_symbol_cache(struct dso *dso);
dso               342 tools/perf/util/dso.h size_t dso__fprintf_buildid(struct dso *dso, FILE *fp);
dso               343 tools/perf/util/dso.h size_t dso__fprintf_symbols_by_name(struct dso *dso, FILE *fp);
dso               344 tools/perf/util/dso.h size_t dso__fprintf(struct dso *dso, FILE *fp);
dso               346 tools/perf/util/dso.h static inline bool dso__is_vmlinux(struct dso *dso)
dso               348 tools/perf/util/dso.h 	return dso->binary_type == DSO_BINARY_TYPE__VMLINUX ||
dso               349 tools/perf/util/dso.h 	       dso->binary_type == DSO_BINARY_TYPE__GUEST_VMLINUX;
dso               352 tools/perf/util/dso.h static inline bool dso__is_kcore(struct dso *dso)
dso               354 tools/perf/util/dso.h 	return dso->binary_type == DSO_BINARY_TYPE__KCORE ||
dso               355 tools/perf/util/dso.h 	       dso->binary_type == DSO_BINARY_TYPE__GUEST_KCORE;
dso               358 tools/perf/util/dso.h static inline bool dso__is_kallsyms(struct dso *dso)
dso               360 tools/perf/util/dso.h 	return dso->kernel && dso->long_name[0] != '/';
dso               363 tools/perf/util/dso.h void dso__free_a2l(struct dso *dso);
dso               365 tools/perf/util/dso.h enum dso_type dso__type(struct dso *dso, struct machine *machine);
dso               367 tools/perf/util/dso.h int dso__strerror_load(struct dso *dso, char *buf, size_t buflen);
dso                15 tools/perf/util/dsos.c 	struct dso *pos;
dso                42 tools/perf/util/dsos.c struct dso *__dsos__findnew_link_by_longname(struct rb_root *root, struct dso *dso, const char *name)
dso                48 tools/perf/util/dsos.c 		name = dso->long_name;
dso                53 tools/perf/util/dsos.c 		struct dso *this = rb_entry(*p, struct dso, rb_node);
dso                63 tools/perf/util/dsos.c 			if (!dso || (dso == this))
dso                70 tools/perf/util/dsos.c 			rc = strcmp(dso->short_name, this->short_name);
dso                81 tools/perf/util/dsos.c 	if (dso) {
dso                83 tools/perf/util/dsos.c 		rb_link_node(&dso->rb_node, parent, p);
dso                84 tools/perf/util/dsos.c 		rb_insert_color(&dso->rb_node, root);
dso                85 tools/perf/util/dsos.c 		dso->root = root;
dso                90 tools/perf/util/dsos.c void __dsos__add(struct dsos *dsos, struct dso *dso)
dso                92 tools/perf/util/dsos.c 	list_add_tail(&dso->node, &dsos->head);
dso                93 tools/perf/util/dsos.c 	__dsos__findnew_link_by_longname(&dsos->root, dso, NULL);
dso               114 tools/perf/util/dsos.c 	dso__get(dso);
dso               117 tools/perf/util/dsos.c void dsos__add(struct dsos *dsos, struct dso *dso)
dso               120 tools/perf/util/dsos.c 	__dsos__add(dsos, dso);
dso               124 tools/perf/util/dsos.c struct dso *__dsos__find(struct dsos *dsos, const char *name, bool cmp_short)
dso               126 tools/perf/util/dsos.c 	struct dso *pos;
dso               137 tools/perf/util/dsos.c struct dso *dsos__find(struct dsos *dsos, const char *name, bool cmp_short)
dso               139 tools/perf/util/dsos.c 	struct dso *dso;
dso               141 tools/perf/util/dsos.c 	dso = __dsos__find(dsos, name, cmp_short);
dso               143 tools/perf/util/dsos.c 	return dso;
dso               146 tools/perf/util/dsos.c static void dso__set_basename(struct dso *dso)
dso               151 tools/perf/util/dsos.c 	if (sscanf(dso->long_name, "/tmp/perf-%d.map", &tid) == 1) {
dso               159 tools/perf/util/dsos.c 		lname = strdup(dso->long_name);
dso               175 tools/perf/util/dsos.c 	dso__set_short_name(dso, base, true);
dso               178 tools/perf/util/dsos.c struct dso *__dsos__addnew(struct dsos *dsos, const char *name)
dso               180 tools/perf/util/dsos.c 	struct dso *dso = dso__new(name);
dso               182 tools/perf/util/dsos.c 	if (dso != NULL) {
dso               183 tools/perf/util/dsos.c 		__dsos__add(dsos, dso);
dso               184 tools/perf/util/dsos.c 		dso__set_basename(dso);
dso               186 tools/perf/util/dsos.c 		dso__put(dso);
dso               188 tools/perf/util/dsos.c 	return dso;
dso               191 tools/perf/util/dsos.c struct dso *__dsos__findnew(struct dsos *dsos, const char *name)
dso               193 tools/perf/util/dsos.c 	struct dso *dso = __dsos__find(dsos, name, false);
dso               195 tools/perf/util/dsos.c 	return dso ? dso : __dsos__addnew(dsos, name);
dso               198 tools/perf/util/dsos.c struct dso *dsos__findnew(struct dsos *dsos, const char *name)
dso               200 tools/perf/util/dsos.c 	struct dso *dso;
dso               202 tools/perf/util/dsos.c 	dso = dso__get(__dsos__findnew(dsos, name));
dso               204 tools/perf/util/dsos.c 	return dso;
dso               208 tools/perf/util/dsos.c 			       bool (skip)(struct dso *dso, int parm), int parm)
dso               210 tools/perf/util/dsos.c 	struct dso *pos;
dso               224 tools/perf/util/dsos.c 	struct dso *pos;
dso                11 tools/perf/util/dsos.h struct dso;
dso                23 tools/perf/util/dsos.h void __dsos__add(struct dsos *dsos, struct dso *dso);
dso                24 tools/perf/util/dsos.h void dsos__add(struct dsos *dsos, struct dso *dso);
dso                25 tools/perf/util/dsos.h struct dso *__dsos__addnew(struct dsos *dsos, const char *name);
dso                26 tools/perf/util/dsos.h struct dso *__dsos__find(struct dsos *dsos, const char *name, bool cmp_short);
dso                27 tools/perf/util/dsos.h struct dso *dsos__find(struct dsos *dsos, const char *name, bool cmp_short);
dso                28 tools/perf/util/dsos.h struct dso *__dsos__findnew(struct dsos *dsos, const char *name);
dso                29 tools/perf/util/dsos.h struct dso *dsos__findnew(struct dsos *dsos, const char *name);
dso                31 tools/perf/util/dsos.h struct dso *__dsos__findnew_link_by_longname(struct rb_root *root, struct dso *dso, const char *name);
dso                33 tools/perf/util/dsos.h static inline struct dso *__dsos__findnew_by_longname(struct rb_root *root, const char *name)
dso                41 tools/perf/util/dsos.h 			       bool (skip)(struct dso *dso, int parm), int parm);
dso               569 tools/perf/util/event.c 		    al->map ? al->map->dso->long_name :
dso               588 tools/perf/util/event.c 		struct dso *dso = al->map->dso;
dso               591 tools/perf/util/event.c 		    (!dso || !(strlist__has_entry(symbol_conf.dso_list,
dso               592 tools/perf/util/event.c 						  dso->short_name) ||
dso               593 tools/perf/util/event.c 			       (dso->short_name != dso->long_name &&
dso               595 tools/perf/util/event.c 						   dso->long_name))))) {
dso                17 tools/perf/util/event.h struct dso;
dso              1893 tools/perf/util/header.c 	struct dso *dso;
dso              1917 tools/perf/util/header.c 	dso = machine__findnew_dso(machine, filename);
dso              1918 tools/perf/util/header.c 	if (dso != NULL) {
dso              1921 tools/perf/util/header.c 		dso__set_build_id(dso, &bev->build_id);
dso              1927 tools/perf/util/header.c 				dso__set_module_info(dso, &m, machine);
dso              1929 tools/perf/util/header.c 				dso->kernel = dso_type;
dso              1934 tools/perf/util/header.c 		build_id__sprintf(dso->build_id, sizeof(dso->build_id),
dso              1937 tools/perf/util/header.c 			 dso->long_name, sbuild_id);
dso              1938 tools/perf/util/header.c 		dso__put(dso);
dso                67 tools/perf/util/hist.c static void hists__set_unres_dso_col_len(struct hists *hists, int dso)
dso                71 tools/perf/util/hist.c 	if (hists__col_len(hists, dso) < unresolved_col_width &&
dso                74 tools/perf/util/hist.c 		hists__set_col_len(hists, dso, unresolved_col_width);
dso               104 tools/perf/util/hist.c 		len = dso__name_len(h->ms.map->dso);
dso               118 tools/perf/util/hist.c 			symlen = dso__name_len(h->branch_info->from.map->dso);
dso               132 tools/perf/util/hist.c 			symlen = dso__name_len(h->branch_info->to.map->dso);
dso               176 tools/perf/util/hist.c 			symlen = dso__name_len(h->mem_info->daddr.map->dso);
dso              2044 tools/perf/util/hist.c 	    (he->ms.map == NULL || he->ms.map->dso != hists->dso_filter)) {
dso              2629 tools/perf/util/hist.c 	const struct dso *dso = hists->dso_filter;
dso              2694 tools/perf/util/hist.c 	if (dso)
dso              2696 tools/perf/util/hist.c 				    ", DSO: %s", dso->short_name);
dso                76 tools/perf/util/hist.h struct dso;
dso                88 tools/perf/util/hist.h 	const struct dso	*dso_filter;
dso               292 tools/perf/util/hist.h 	int dso;
dso               433 tools/perf/util/intel-pt.c static unsigned int intel_pt_cache_size(struct dso *dso,
dso               438 tools/perf/util/intel-pt.c 	size = dso__data_size(dso, machine);
dso               447 tools/perf/util/intel-pt.c static struct auxtrace_cache *intel_pt_cache(struct dso *dso,
dso               453 tools/perf/util/intel-pt.c 	if (dso->auxtrace_cache)
dso               454 tools/perf/util/intel-pt.c 		return dso->auxtrace_cache;
dso               456 tools/perf/util/intel-pt.c 	bits = intel_pt_cache_size(dso, machine);
dso               461 tools/perf/util/intel-pt.c 	dso->auxtrace_cache = c;
dso               466 tools/perf/util/intel-pt.c static int intel_pt_cache_add(struct dso *dso, struct machine *machine,
dso               470 tools/perf/util/intel-pt.c 	struct auxtrace_cache *c = intel_pt_cache(dso, machine);
dso               497 tools/perf/util/intel-pt.c intel_pt_cache_lookup(struct dso *dso, struct machine *machine, u64 offset)
dso               499 tools/perf/util/intel-pt.c 	struct auxtrace_cache *c = intel_pt_cache(dso, machine);
dso               504 tools/perf/util/intel-pt.c 	return auxtrace_cache__lookup(dso->auxtrace_cache, offset);
dso               546 tools/perf/util/intel-pt.c 		if (!thread__find_map(thread, cpumode, *ip, &al) || !al.map->dso)
dso               549 tools/perf/util/intel-pt.c 		if (al.map->dso->data.status == DSO_DATA_STATUS_ERROR &&
dso               550 tools/perf/util/intel-pt.c 		    dso__data_status_seen(al.map->dso,
dso               559 tools/perf/util/intel-pt.c 			e = intel_pt_cache_lookup(al.map->dso, machine, offset);
dso               581 tools/perf/util/intel-pt.c 		x86_64 = al.map->dso->is_64_bit;
dso               584 tools/perf/util/intel-pt.c 			len = dso__data_read_offset(al.map->dso, machine,
dso               628 tools/perf/util/intel-pt.c 		e = intel_pt_cache_lookup(al.map->dso, machine, start_offset);
dso               634 tools/perf/util/intel-pt.c 	intel_pt_cache_add(al.map->dso, machine, start_offset, insn_cnt,
dso               699 tools/perf/util/intel-pt.c 	if (!thread__find_map(thread, cpumode, ip, &al) || !al.map->dso)
dso               705 tools/perf/util/intel-pt.c 				     al.map->dso->long_name);
dso              2035 tools/perf/util/intel-pt.c 	start = dso__first_symbol(map->dso);
dso               168 tools/perf/util/machine.c 	struct dso *pos, *n;
dso               669 tools/perf/util/machine.c static struct dso *machine__findnew_module_dso(struct machine *machine,
dso               673 tools/perf/util/machine.c 	struct dso *dso;
dso               677 tools/perf/util/machine.c 	dso = __dsos__find(&machine->dsos, m->name, true);
dso               678 tools/perf/util/machine.c 	if (!dso) {
dso               679 tools/perf/util/machine.c 		dso = __dsos__addnew(&machine->dsos, m->name);
dso               680 tools/perf/util/machine.c 		if (dso == NULL)
dso               683 tools/perf/util/machine.c 		dso__set_module_info(dso, m, machine);
dso               684 tools/perf/util/machine.c 		dso__set_long_name(dso, strdup(filename), true);
dso               687 tools/perf/util/machine.c 	dso__get(dso);
dso               690 tools/perf/util/machine.c 	return dso;
dso               740 tools/perf/util/machine.c 	dso__insert_symbol(map->dso, sym);
dso               774 tools/perf/util/machine.c 	struct dso *dso = NULL;
dso               784 tools/perf/util/machine.c 	dso = machine__findnew_module_dso(machine, &m, filename);
dso               785 tools/perf/util/machine.c 	if (dso == NULL)
dso               788 tools/perf/util/machine.c 	map = map__new2(start, dso);
dso               798 tools/perf/util/machine.c 	dso__put(dso);
dso               817 tools/perf/util/machine.c 				     bool (skip)(struct dso *dso, int parm), int parm)
dso               823 tools/perf/util/machine.c 				     bool (skip)(struct dso *dso, int parm), int parm)
dso               839 tools/perf/util/machine.c 	struct dso *kdso = machine__kernel_map(machine)->dso;
dso               880 tools/perf/util/machine.c static struct dso *machine__get_kernel(struct machine *machine)
dso               883 tools/perf/util/machine.c 	struct dso *kernel;
dso               961 tools/perf/util/machine.c 				     struct dso *kernel,
dso               989 tools/perf/util/machine.c static u64 find_entry_trampoline(struct dso *dso)
dso               997 tools/perf/util/machine.c 	struct symbol *sym = dso__first_symbol(dso);
dso              1022 tools/perf/util/machine.c 					  struct dso *kernel)
dso              1079 tools/perf/util/machine.c 					     struct dso *kernel __maybe_unused)
dso              1085 tools/perf/util/machine.c __machine__create_kernel_maps(struct machine *machine, struct dso *kernel)
dso              1204 tools/perf/util/machine.c 	int ret = __dso__load_kallsyms(map->dso, filename, map, true);
dso              1207 tools/perf/util/machine.c 		dso__set_loaded(map->dso);
dso              1222 tools/perf/util/machine.c 	int ret = dso__load_vmlinux_path(map->dso, map);
dso              1225 tools/perf/util/machine.c 		dso__set_loaded(map->dso);
dso              1258 tools/perf/util/machine.c static bool is_kmod_dso(struct dso *dso)
dso              1260 tools/perf/util/machine.c 	return dso->symtab_type == DSO_BINARY_TYPE__SYSTEM_PATH_KMODULE ||
dso              1261 tools/perf/util/machine.c 	       dso->symtab_type == DSO_BINARY_TYPE__GUEST_KMODULE;
dso              1277 tools/perf/util/machine.c 	dso__set_long_name(map->dso, long_name, true);
dso              1278 tools/perf/util/machine.c 	dso__kernel_module_get_build_id(map->dso, "");
dso              1284 tools/perf/util/machine.c 	if (m->comp && is_kmod_dso(map->dso)) {
dso              1285 tools/perf/util/machine.c 		map->dso->symtab_type++;
dso              1286 tools/perf/util/machine.c 		map->dso->comp = m->comp;
dso              1387 tools/perf/util/machine.c 	dso__kernel_module_get_build_id(map->dso, machine->root_dir);
dso              1447 tools/perf/util/machine.c 	struct dso *kernel = machine__get_kernel(machine);
dso              1501 tools/perf/util/machine.c 	struct dso *dso;
dso              1503 tools/perf/util/machine.c 	list_for_each_entry(dso, &machine->dsos.head, node) {
dso              1504 tools/perf/util/machine.c 		if (dso__is_kcore(dso))
dso              1522 tools/perf/util/machine.c 	struct dso *kernel = kernel_map ? kernel_map->dso : NULL;
dso              1571 tools/perf/util/machine.c 		struct dso *kernel = NULL;
dso              1572 tools/perf/util/machine.c 		struct dso *dso;
dso              1576 tools/perf/util/machine.c 		list_for_each_entry(dso, &machine->dsos.head, node) {
dso              1594 tools/perf/util/machine.c 			if (!dso->kernel ||
dso              1595 tools/perf/util/machine.c 			    is_kernel_module(dso->long_name,
dso              1600 tools/perf/util/machine.c 			kernel = dso;
dso              1987 tools/perf/util/machine.c 	srcline = srcline__tree_find(&map->dso->srclines, ip);
dso              1992 tools/perf/util/machine.c 		srcline = get_srcline(map->dso, map__rip_2objdump(map, ip),
dso              1994 tools/perf/util/machine.c 		srcline__tree_insert(&map->dso->srclines, ip, srcline);
dso              2436 tools/perf/util/machine.c 	inline_node = inlines__tree_find(&map->dso->inlined_nodes, addr);
dso              2438 tools/perf/util/machine.c 		inline_node = dso__parse_addr_inlines(map->dso, addr, sym);
dso              2441 tools/perf/util/machine.c 		inlines__tree_insert(&map->dso->inlined_nodes, inline_node);
dso              2703 tools/perf/util/machine.c struct dso *machine__findnew_dso(struct machine *machine, const char *filename)
dso              2717 tools/perf/util/machine.c 	*modp = __map__is_kmodule(map) ? (char *)map->dso->short_name : NULL;
dso                13 tools/perf/util/machine.h struct dso;
dso               205 tools/perf/util/machine.h struct dso *machine__findnew_dso(struct machine *machine, const char *filename);
dso               233 tools/perf/util/machine.h 				     bool (skip)(struct dso *dso, int parm), int parm);
dso               236 tools/perf/util/machine.h 				     bool (skip)(struct dso *dso, int parm), int parm);
dso               266 tools/perf/util/machine.h 				      struct dso *kernel);
dso               277 tools/perf/util/machine.h 				     struct dso *kernel,
dso               281 tools/perf/util/machine.h 					  struct dso *kernel);
dso               133 tools/perf/util/map.c void map__init(struct map *map, u64 start, u64 end, u64 pgoff, struct dso *dso)
dso               139 tools/perf/util/map.c 	map->dso      = dso__get(dso);
dso               159 tools/perf/util/map.c 		struct dso *dso;
dso               198 tools/perf/util/map.c 			dso = machine__findnew_vdso(machine, thread);
dso               200 tools/perf/util/map.c 			dso = machine__findnew_dso(machine, filename);
dso               202 tools/perf/util/map.c 		if (dso == NULL)
dso               205 tools/perf/util/map.c 		map__init(map, start, start + len, pgoff, dso);
dso               216 tools/perf/util/map.c 				dso__set_loaded(dso);
dso               218 tools/perf/util/map.c 		dso->nsinfo = nsi;
dso               219 tools/perf/util/map.c 		dso__put(dso);
dso               233 tools/perf/util/map.c struct map *map__new2(u64 start, struct dso *dso)
dso               236 tools/perf/util/map.c 				     (dso->kernel ? sizeof(struct kmap) : 0)));
dso               241 tools/perf/util/map.c 		map__init(map, start, 0, 0, dso);
dso               272 tools/perf/util/map.c 	if (map->dso->binary_type == DSO_BINARY_TYPE__BPF_PROG_INFO)
dso               280 tools/perf/util/map.c 	name = map->dso->short_name;
dso               286 tools/perf/util/map.c 	return dso__has_symbols(map->dso);
dso               292 tools/perf/util/map.c 	dso__zput(map->dso);
dso               309 tools/perf/util/map.c 	struct rb_root_cached *symbols = &map->dso->symbols;
dso               319 tools/perf/util/map.c 	struct rb_root_cached *symbols = &map->dso->symbols;
dso               331 tools/perf/util/map.c 	const char *name = map->dso->long_name;
dso               334 tools/perf/util/map.c 	if (dso__loaded(map->dso))
dso               337 tools/perf/util/map.c 	nr = dso__load(map->dso, map);
dso               339 tools/perf/util/map.c 		if (map->dso->has_build_id) {
dso               342 tools/perf/util/map.c 			build_id__sprintf(map->dso->build_id,
dso               343 tools/perf/util/map.c 					  sizeof(map->dso->build_id),
dso               376 tools/perf/util/map.c 	return dso__find_symbol(map->dso, addr);
dso               384 tools/perf/util/map.c 	if (!dso__sorted_by_name(map->dso))
dso               385 tools/perf/util/map.c 		dso__sort_by_name(map->dso);
dso               387 tools/perf/util/map.c 	return dso__find_symbol_by_name(map->dso, name);
dso               397 tools/perf/util/map.c 		dso__get(map->dso);
dso               407 tools/perf/util/map.c 		       map->start, map->end, map->pgoff, map->dso->name);
dso               415 tools/perf/util/map.c 	if (map && map->dso) {
dso               416 tools/perf/util/map.c 		if (symbol_conf.show_kernel_path && map->dso->long_name)
dso               417 tools/perf/util/map.c 			dsoname = map->dso->long_name;
dso               419 tools/perf/util/map.c 			dsoname = map->dso->name;
dso               434 tools/perf/util/map.c 	return get_srcline(map->dso, map__rip_2objdump(map, addr), sym, true, true, addr);
dso               442 tools/perf/util/map.c 	if (map && map->dso) {
dso               461 tools/perf/util/map.c 	if (!map || !map->dso)
dso               463 tools/perf/util/map.c 	srcfile = get_srcline_split(map->dso,
dso               529 tools/perf/util/map.c 	if (!map->dso->adjust_symbols)
dso               532 tools/perf/util/map.c 	if (map->dso->rel)
dso               539 tools/perf/util/map.c 	if (map->dso->kernel == DSO_TYPE_USER)
dso               540 tools/perf/util/map.c 		return rip + map->dso->text_offset;
dso               559 tools/perf/util/map.c 	if (!map->dso->adjust_symbols)
dso               562 tools/perf/util/map.c 	if (map->dso->rel)
dso               569 tools/perf/util/map.c 	if (map->dso->kernel == DSO_TYPE_USER)
dso               570 tools/perf/util/map.c 		return map->unmap_ip(map, ip - map->dso->text_offset);
dso               751 tools/perf/util/map.c 			printed += dso__fprintf(pos->dso, fp);
dso               817 tools/perf/util/map.c 					   map->dso->name);
dso               942 tools/perf/util/map.c 		rc = strcmp(m->dso->short_name, map->dso->short_name);
dso              1021 tools/perf/util/map.c 	if (!map->dso || !map->dso->kernel)
dso                14 tools/perf/util/map.h struct dso;
dso                44 tools/perf/util/map.h 	struct dso		*dso;
dso                92 tools/perf/util/map.h 	dso__for_each_symbol(map->dso, pos, n)
dso               112 tools/perf/util/map.h 	       u64 start, u64 end, u64 pgoff, struct dso *dso);
dso               117 tools/perf/util/map.h struct map *map__new2(u64 start, struct dso *dso);
dso               158 tools/perf/util/probe-event.c 		if (strncmp(pos->dso->short_name + 1, module,
dso               159 tools/perf/util/probe-event.c 			    pos->dso->short_name_len - 2) == 0 &&
dso               160 tools/perf/util/probe-event.c 		    module[pos->dso->short_name_len - 2] == '\0') {
dso               174 tools/perf/util/probe-event.c 		if (map && map->dso)
dso               175 tools/perf/util/probe-event.c 			map->dso->nsinfo = nsinfo__get(nsi);
dso               313 tools/perf/util/probe-event.c static int kernel_get_module_dso(const char *module, struct dso **pdso)
dso               315 tools/perf/util/probe-event.c 	struct dso *dso;
dso               326 tools/perf/util/probe-event.c 			dso = map->dso;
dso               334 tools/perf/util/probe-event.c 	dso = map->dso;
dso               337 tools/perf/util/probe-event.c 	dso->load_errno = 0;
dso               339 tools/perf/util/probe-event.c 		ret = dso__load_vmlinux(dso, map, vmlinux_name, false);
dso               341 tools/perf/util/probe-event.c 		ret = dso__load_vmlinux_path(dso, map);
dso               343 tools/perf/util/probe-event.c 	*pdso = dso;
dso               453 tools/perf/util/probe-event.c 	struct dso *dso = NULL;
dso               458 tools/perf/util/probe-event.c 		err = kernel_get_module_dso(module, &dso);
dso               460 tools/perf/util/probe-event.c 			if (!dso || dso->load_errno == 0) {
dso               464 tools/perf/util/probe-event.c 				dso__strerror_load(dso, reason, STRERR_BUFSIZE);
dso               473 tools/perf/util/probe-event.c 		path = dso->long_name;
dso              3530 tools/perf/util/probe-event.c 	if (!dso__sorted_by_name(map->dso))
dso              3531 tools/perf/util/probe-event.c 		dso__sort_by_name(map->dso);
dso              3536 tools/perf/util/probe-event.c 	for (nd = rb_first_cached(&map->dso->symbol_names); nd;
dso               111 tools/perf/util/probe-finder.c 	struct dso *dso;
dso               115 tools/perf/util/probe-finder.c 	dso = dso__new(path);
dso               116 tools/perf/util/probe-finder.c 	if (!dso)
dso               122 tools/perf/util/probe-finder.c 		if (dso__read_binary_type_filename(dso, *type, &nil,
dso               127 tools/perf/util/probe-finder.c 	dso__put(dso);
dso               318 tools/perf/util/scripting-engines/trace-event-perl.c 			if (map && map->dso) {
dso               319 tools/perf/util/scripting-engines/trace-event-perl.c 				if (symbol_conf.show_kernel_path && map->dso->long_name)
dso               320 tools/perf/util/scripting-engines/trace-event-perl.c 					dsoname = map->dso->long_name;
dso               322 tools/perf/util/scripting-engines/trace-event-perl.c 					dsoname = map->dso->name;
dso               384 tools/perf/util/scripting-engines/trace-event-python.c 	if (map && map->dso) {
dso               385 tools/perf/util/scripting-engines/trace-event-python.c 		if (symbol_conf.show_kernel_path && map->dso->long_name)
dso               386 tools/perf/util/scripting-engines/trace-event-python.c 			dsoname = map->dso->long_name;
dso               388 tools/perf/util/scripting-engines/trace-event-python.c 			dsoname = map->dso->name;
dso               772 tools/perf/util/scripting-engines/trace-event-python.c 			_PyUnicode_FromString(al->map->dso->name));
dso              1055 tools/perf/util/scripting-engines/trace-event-python.c static int python_export_dso(struct db_export *dbe, struct dso *dso,
dso              1062 tools/perf/util/scripting-engines/trace-event-python.c 	build_id__sprintf(dso->build_id, sizeof(dso->build_id), sbuild_id);
dso              1066 tools/perf/util/scripting-engines/trace-event-python.c 	tuple_set_u64(t, 0, dso->db_id);
dso              1068 tools/perf/util/scripting-engines/trace-event-python.c 	tuple_set_string(t, 2, dso->short_name);
dso              1069 tools/perf/util/scripting-engines/trace-event-python.c 	tuple_set_string(t, 3, dso->long_name);
dso              1080 tools/perf/util/scripting-engines/trace-event-python.c 				struct dso *dso)
dso              1089 tools/perf/util/scripting-engines/trace-event-python.c 	tuple_set_u64(t, 1, dso->db_id);
dso              1551 tools/perf/util/scripting-engines/trace-event-python.c 	SET_TABLE_HANDLER(dso);
dso              2271 tools/perf/util/session.c 					  bool (skip)(struct dso *dso, int parm), int parm)
dso               109 tools/perf/util/session.h 					  bool (fn)(struct dso *dso, int parm), int parm);
dso               170 tools/perf/util/sort.c 	struct dso *dso_l = map_l ? map_l->dso : NULL;
dso               171 tools/perf/util/sort.c 	struct dso *dso_r = map_r ? map_r->dso : NULL;
dso               197 tools/perf/util/sort.c 	if (map && map->dso) {
dso               198 tools/perf/util/sort.c 		const char *dso_name = verbose > 0 ? map->dso->long_name :
dso               199 tools/perf/util/sort.c 			map->dso->short_name;
dso               214 tools/perf/util/sort.c 	const struct dso *dso = arg;
dso               219 tools/perf/util/sort.c 	return dso && (!he->ms.map || he->ms.map->dso != dso);
dso               272 tools/perf/util/sort.c 	if (!hists__has(left->hists, dso) || hists__has(right->hists, dso)) {
dso               297 tools/perf/util/sort.c 		char o = map ? dso__symtab_origin(map->dso) : '!';
dso               507 tools/perf/util/sort.c 	sf = __get_srcline(map->dso, map__rip_2objdump(map, e->ip),
dso               789 tools/perf/util/sort.c 	const struct dso *dso = arg;
dso               794 tools/perf/util/sort.c 	return dso && (!he->branch_info || !he->branch_info->from.map ||
dso               795 tools/perf/util/sort.c 		       he->branch_info->from.map->dso != dso);
dso               821 tools/perf/util/sort.c 	const struct dso *dso = arg;
dso               826 tools/perf/util/sort.c 	return dso && (!he->branch_info || !he->branch_info->to.map ||
dso               827 tools/perf/util/sort.c 		       he->branch_info->to.map->dso != dso);
dso              1632 tools/perf/util/sort.c 	if (map && map->dso)
dso              1852 tools/perf/util/sort.c MK_SORT_ENTRY_CHK(dso)
dso              2606 tools/perf/util/sort.c 			list->dso = 1;
dso              3106 tools/perf/util/sort.c 	perf_hpp_list.dso = 0;
dso                21 tools/perf/util/srcline.c static const char *dso__name(struct dso *dso)
dso                25 tools/perf/util/srcline.c 	if (dso->symsrc_filename)
dso                26 tools/perf/util/srcline.c 		dso_name = dso->symsrc_filename;
dso                28 tools/perf/util/srcline.c 		dso_name = dso->long_name;
dso                83 tools/perf/util/srcline.c static struct symbol *new_inline_sym(struct dso *dso,
dso                93 tools/perf/util/srcline.c 	if (dso) {
dso                94 tools/perf/util/srcline.c 		demangled = dso__demangle_sym(dso, 0, funcname);
dso               278 tools/perf/util/srcline.c static int inline_list__append_dso_a2l(struct dso *dso,
dso               282 tools/perf/util/srcline.c 	struct a2l_data *a2l = dso->a2l;
dso               283 tools/perf/util/srcline.c 	struct symbol *inline_sym = new_inline_sym(dso, sym, a2l->funcname);
dso               293 tools/perf/util/srcline.c 		     char **file, unsigned int *line, struct dso *dso,
dso               298 tools/perf/util/srcline.c 	struct a2l_data *a2l = dso->a2l;
dso               301 tools/perf/util/srcline.c 		dso->a2l = addr2line_init(dso_name);
dso               302 tools/perf/util/srcline.c 		a2l = dso->a2l;
dso               322 tools/perf/util/srcline.c 		if (node && inline_list__append_dso_a2l(dso, node, sym))
dso               333 tools/perf/util/srcline.c 				if (inline_list__append_dso_a2l(dso, node, sym))
dso               352 tools/perf/util/srcline.c void dso__free_a2l(struct dso *dso)
dso               354 tools/perf/util/srcline.c 	struct a2l_data *a2l = dso->a2l;
dso               361 tools/perf/util/srcline.c 	dso->a2l = NULL;
dso               365 tools/perf/util/srcline.c 					struct dso *dso, struct symbol *sym)
dso               378 tools/perf/util/srcline.c 	addr2line(dso_name, addr, NULL, NULL, dso, true, node, sym);
dso               407 tools/perf/util/srcline.c 		     struct dso *dso __maybe_unused,
dso               445 tools/perf/util/srcline.c void dso__free_a2l(struct dso *dso __maybe_unused)
dso               450 tools/perf/util/srcline.c 					struct dso *dso __maybe_unused,
dso               493 tools/perf/util/srcline.c 		inline_sym = new_inline_sym(dso, sym, funcname);
dso               519 tools/perf/util/srcline.c char *__get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
dso               528 tools/perf/util/srcline.c 	if (!dso->has_srcline)
dso               531 tools/perf/util/srcline.c 	dso_name = dso__name(dso);
dso               535 tools/perf/util/srcline.c 	if (!addr2line(dso_name, addr, &file, &line, dso,
dso               545 tools/perf/util/srcline.c 	dso->a2l_fails = 0;
dso               550 tools/perf/util/srcline.c 	if (dso->a2l_fails && ++dso->a2l_fails > A2L_FAIL_LIMIT) {
dso               551 tools/perf/util/srcline.c 		dso->has_srcline = 0;
dso               552 tools/perf/util/srcline.c 		dso__free_a2l(dso);
dso               563 tools/perf/util/srcline.c 	} else if (asprintf(&srcline, "%s[%" PRIx64 "]", dso->short_name, addr) < 0)
dso               569 tools/perf/util/srcline.c char *get_srcline_split(struct dso *dso, u64 addr, unsigned *line)
dso               574 tools/perf/util/srcline.c 	if (!dso->has_srcline)
dso               577 tools/perf/util/srcline.c 	dso_name = dso__name(dso);
dso               581 tools/perf/util/srcline.c 	if (!addr2line(dso_name, addr, &file, line, dso, true, NULL, NULL))
dso               584 tools/perf/util/srcline.c 	dso->a2l_fails = 0;
dso               588 tools/perf/util/srcline.c 	if (dso->a2l_fails && ++dso->a2l_fails > A2L_FAIL_LIMIT) {
dso               589 tools/perf/util/srcline.c 		dso->has_srcline = 0;
dso               590 tools/perf/util/srcline.c 		dso__free_a2l(dso);
dso               602 tools/perf/util/srcline.c char *get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
dso               605 tools/perf/util/srcline.c 	return __get_srcline(dso, addr, sym, show_sym, show_addr, false, ip);
dso               677 tools/perf/util/srcline.c struct inline_node *dso__parse_addr_inlines(struct dso *dso, u64 addr,
dso               682 tools/perf/util/srcline.c 	dso_name = dso__name(dso);
dso               686 tools/perf/util/srcline.c 	return addr2inlines(dso_name, addr, dso, sym);
dso                 9 tools/perf/util/srcline.h struct dso;
dso                13 tools/perf/util/srcline.h char *get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
dso                15 tools/perf/util/srcline.h char *__get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
dso                19 tools/perf/util/srcline.h char *get_srcline_split(struct dso *dso, u64 addr, unsigned *line);
dso                43 tools/perf/util/srcline.h struct inline_node *dso__parse_addr_inlines(struct dso *dso, u64 addr,
dso               238 tools/perf/util/symbol-elf.c static char *demangle_sym(struct dso *dso, int kmodule, const char *elf_name)
dso               248 tools/perf/util/symbol-elf.c 	if (!want_demangle(dso->kernel || kmodule))
dso               281 tools/perf/util/symbol-elf.c int dso__synthesize_plt_symbols(struct dso *dso, struct symsrc *ss)
dso               391 tools/perf/util/symbol-elf.c 			demangled = demangle_sym(dso, 0, elf_name);
dso               404 tools/perf/util/symbol-elf.c 			symbols__insert(&dso->symbols, f);
dso               417 tools/perf/util/symbol-elf.c 			demangled = demangle_sym(dso, 0, elf_name);
dso               430 tools/perf/util/symbol-elf.c 			symbols__insert(&dso->symbols, f);
dso               440 tools/perf/util/symbol-elf.c 		 __func__, dso->long_name);
dso               444 tools/perf/util/symbol-elf.c char *dso__demangle_sym(struct dso *dso, int kmodule, const char *elf_name)
dso               446 tools/perf/util/symbol-elf.c 	return demangle_sym(dso, kmodule, elf_name);
dso               663 tools/perf/util/symbol-elf.c static int dso__swap_init(struct dso *dso, unsigned char eidata)
dso               667 tools/perf/util/symbol-elf.c 	dso->needs_swap = DSO_SWAP__NO;
dso               673 tools/perf/util/symbol-elf.c 			dso->needs_swap = DSO_SWAP__YES;
dso               679 tools/perf/util/symbol-elf.c 			dso->needs_swap = DSO_SWAP__YES;
dso               712 tools/perf/util/symbol-elf.c int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name,
dso               719 tools/perf/util/symbol-elf.c 	if (dso__needs_decompress(dso)) {
dso               720 tools/perf/util/symbol-elf.c 		fd = dso__decompress_kmodule_fd(dso, name);
dso               724 tools/perf/util/symbol-elf.c 		type = dso->symtab_type;
dso               728 tools/perf/util/symbol-elf.c 			dso->load_errno = errno;
dso               736 tools/perf/util/symbol-elf.c 		dso->load_errno = DSO_LOAD_ERRNO__INVALID_ELF;
dso               741 tools/perf/util/symbol-elf.c 		dso->load_errno = DSO_LOAD_ERRNO__INVALID_ELF;
dso               746 tools/perf/util/symbol-elf.c 	if (dso__swap_init(dso, ehdr.e_ident[EI_DATA])) {
dso               747 tools/perf/util/symbol-elf.c 		dso->load_errno = DSO_LOAD_ERRNO__INTERNAL_ERROR;
dso               752 tools/perf/util/symbol-elf.c 	if (dso->has_build_id && !symbol_conf.ignore_vmlinux_buildid) {
dso               756 tools/perf/util/symbol-elf.c 			dso->load_errno = DSO_LOAD_ERRNO__CANNOT_READ_BUILDID;
dso               760 tools/perf/util/symbol-elf.c 		if (!dso__build_id_equal(dso, build_id)) {
dso               762 tools/perf/util/symbol-elf.c 			dso->load_errno = DSO_LOAD_ERRNO__MISMATCHING_BUILDID;
dso               786 tools/perf/util/symbol-elf.c 	if (dso->kernel == DSO_TYPE_USER)
dso               793 tools/perf/util/symbol-elf.c 		dso->load_errno = errno;
dso               845 tools/perf/util/symbol-elf.c static int dso__process_kernel_symbol(struct dso *dso, struct map *map,
dso               848 tools/perf/util/symbol-elf.c 				      struct dso **curr_dsop, struct map **curr_mapp,
dso               852 tools/perf/util/symbol-elf.c 	struct dso *curr_dso = *curr_dsop;
dso               860 tools/perf/util/symbol-elf.c 	if (strcmp(section_name, (curr_dso->short_name + dso->short_name_len)) == 0)
dso               869 tools/perf/util/symbol-elf.c 		if (*remap_kernel && dso->kernel) {
dso               896 tools/perf/util/symbol-elf.c 		*curr_dsop = dso;
dso               903 tools/perf/util/symbol-elf.c 	snprintf(dso_name, sizeof(dso_name), "%s%s", dso->short_name, section_name);
dso               915 tools/perf/util/symbol-elf.c 		curr_dso->kernel = dso->kernel;
dso               916 tools/perf/util/symbol-elf.c 		curr_dso->long_name = dso->long_name;
dso               917 tools/perf/util/symbol-elf.c 		curr_dso->long_name_len = dso->long_name_len;
dso               930 tools/perf/util/symbol-elf.c 		curr_dso->symtab_type = dso->symtab_type;
dso               944 tools/perf/util/symbol-elf.c 		*curr_dsop = curr_map->dso;
dso               949 tools/perf/util/symbol-elf.c int dso__load_sym(struct dso *dso, struct map *map, struct symsrc *syms_ss,
dso               952 tools/perf/util/symbol-elf.c 	struct kmap *kmap = dso->kernel ? map__kmap(map) : NULL;
dso               955 tools/perf/util/symbol-elf.c 	struct dso *curr_dso = dso;
dso               973 tools/perf/util/symbol-elf.c 	dso->symtab_type = syms_ss->type;
dso               974 tools/perf/util/symbol-elf.c 	dso->is_64_bit = syms_ss->is_64_bit;
dso               975 tools/perf/util/symbol-elf.c 	dso->rel = syms_ss->ehdr.e_type == ET_REL;
dso               982 tools/perf/util/symbol-elf.c 		symbols__delete(&dso->symbols);
dso               990 tools/perf/util/symbol-elf.c 		if (dso->kernel)
dso              1004 tools/perf/util/symbol-elf.c 		dso->text_offset = tshdr.sh_addr - tshdr.sh_offset;
dso              1054 tools/perf/util/symbol-elf.c 	if (dso__is_vdso(dso))
dso              1055 tools/perf/util/symbol-elf.c 		map->reloc = map->start - dso->text_offset;
dso              1057 tools/perf/util/symbol-elf.c 	dso->adjust_symbols = runtime_ss->adjust_symbols || ref_reloc(kmap);
dso              1062 tools/perf/util/symbol-elf.c 	if (dso->kernel || kmodule) {
dso              1064 tools/perf/util/symbol-elf.c 		adjust_kernel_syms = dso->adjust_symbols;
dso              1089 tools/perf/util/symbol-elf.c 			sym.st_value = DSO__SWAP(dso, u64, *opd);
dso              1124 tools/perf/util/symbol-elf.c 		if (dso->kernel || kmodule) {
dso              1125 tools/perf/util/symbol-elf.c 			if (dso__process_kernel_symbol(dso, map, &sym, &shdr, kmaps, kmap, &curr_dso, &curr_map,
dso              1137 tools/perf/util/symbol-elf.c 		demangled = demangle_sym(dso, kmodule, elf_name);
dso              1150 tools/perf/util/symbol-elf.c 		__symbols__insert(&curr_dso->symbols, f, dso->kernel);
dso              1158 tools/perf/util/symbol-elf.c 		symbols__fixup_end(&dso->symbols);
dso              1159 tools/perf/util/symbol-elf.c 		symbols__fixup_duplicate(&dso->symbols);
dso               254 tools/perf/util/symbol-minimal.c int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name,
dso               272 tools/perf/util/symbol-minimal.c 	dso->load_errno = errno;
dso               293 tools/perf/util/symbol-minimal.c int dso__synthesize_plt_symbols(struct dso *dso __maybe_unused,
dso               337 tools/perf/util/symbol-minimal.c int dso__load_sym(struct dso *dso, struct map *map __maybe_unused,
dso               347 tools/perf/util/symbol-minimal.c 		dso->is_64_bit = ret;
dso               350 tools/perf/util/symbol-minimal.c 		dso__set_build_id(dso, build_id);
dso               381 tools/perf/util/symbol-minimal.c char *dso__demangle_sym(struct dso *dso __maybe_unused,
dso                44 tools/perf/util/symbol.c static int dso__load_kernel_sym(struct dso *dso, struct map *map);
dso                45 tools/perf/util/symbol.c static int dso__load_guest_kernel_sym(struct dso *dso, struct map *map);
dso               504 tools/perf/util/symbol.c void dso__reset_find_symbol_cache(struct dso *dso)
dso               506 tools/perf/util/symbol.c 	dso->last_find_result.addr   = 0;
dso               507 tools/perf/util/symbol.c 	dso->last_find_result.symbol = NULL;
dso               510 tools/perf/util/symbol.c void dso__insert_symbol(struct dso *dso, struct symbol *sym)
dso               512 tools/perf/util/symbol.c 	__symbols__insert(&dso->symbols, sym, dso->kernel);
dso               515 tools/perf/util/symbol.c 	if (dso->last_find_result.addr >= sym->start &&
dso               516 tools/perf/util/symbol.c 	    (dso->last_find_result.addr < sym->end ||
dso               518 tools/perf/util/symbol.c 		dso->last_find_result.symbol = sym;
dso               522 tools/perf/util/symbol.c struct symbol *dso__find_symbol(struct dso *dso, u64 addr)
dso               524 tools/perf/util/symbol.c 	if (dso->last_find_result.addr != addr || dso->last_find_result.symbol == NULL) {
dso               525 tools/perf/util/symbol.c 		dso->last_find_result.addr   = addr;
dso               526 tools/perf/util/symbol.c 		dso->last_find_result.symbol = symbols__find(&dso->symbols, addr);
dso               529 tools/perf/util/symbol.c 	return dso->last_find_result.symbol;
dso               532 tools/perf/util/symbol.c struct symbol *dso__first_symbol(struct dso *dso)
dso               534 tools/perf/util/symbol.c 	return symbols__first(&dso->symbols);
dso               537 tools/perf/util/symbol.c struct symbol *dso__last_symbol(struct dso *dso)
dso               539 tools/perf/util/symbol.c 	return symbols__last(&dso->symbols);
dso               558 tools/perf/util/symbol.c struct symbol *dso__find_symbol_by_name(struct dso *dso, const char *name)
dso               560 tools/perf/util/symbol.c 	struct symbol *s = symbols__find_by_name(&dso->symbol_names, name,
dso               563 tools/perf/util/symbol.c 		s = symbols__find_by_name(&dso->symbol_names, name,
dso               568 tools/perf/util/symbol.c void dso__sort_by_name(struct dso *dso)
dso               570 tools/perf/util/symbol.c 	dso__set_sorted_by_name(dso);
dso               571 tools/perf/util/symbol.c 	return symbols__sort_by_name(&dso->symbol_names, &dso->symbols);
dso               672 tools/perf/util/symbol.c 	struct dso *dso = arg;
dso               673 tools/perf/util/symbol.c 	struct rb_root_cached *root = &dso->symbols;
dso               700 tools/perf/util/symbol.c static int dso__load_all_kallsyms(struct dso *dso, const char *filename)
dso               702 tools/perf/util/symbol.c 	return kallsyms__parse(filename, dso, map__process_kallsym_symbol);
dso               705 tools/perf/util/symbol.c static int map_groups__split_kallsyms_for_kcore(struct map_groups *kmaps, struct dso *dso)
dso               710 tools/perf/util/symbol.c 	struct rb_root_cached old_root = dso->symbols;
dso               711 tools/perf/util/symbol.c 	struct rb_root_cached *root = &dso->symbols;
dso               743 tools/perf/util/symbol.c 		symbols__insert(&curr_map->dso->symbols, pos);
dso               748 tools/perf/util/symbol.c 	dso->adjust_symbols = 1;
dso               758 tools/perf/util/symbol.c static int map_groups__split_kallsyms(struct map_groups *kmaps, struct dso *dso, u64 delta,
dso               765 tools/perf/util/symbol.c 	struct rb_root_cached *root = &dso->symbols;
dso               790 tools/perf/util/symbol.c 			if (strcmp(curr_map->dso->short_name, module)) {
dso               792 tools/perf/util/symbol.c 				    dso->kernel == DSO_TYPE_GUEST_KERNEL &&
dso               801 tools/perf/util/symbol.c 					dso__set_loaded(curr_map->dso);
dso               814 tools/perf/util/symbol.c 				if (curr_map->dso->loaded &&
dso               836 tools/perf/util/symbol.c 			struct dso *ndso;
dso               849 tools/perf/util/symbol.c 			if (dso->kernel == DSO_TYPE_GUEST_KERNEL)
dso               862 tools/perf/util/symbol.c 			ndso->kernel = dso->kernel;
dso               881 tools/perf/util/symbol.c 			symbols__insert(&curr_map->dso->symbols, pos);
dso               893 tools/perf/util/symbol.c 	    dso->kernel == DSO_TYPE_GUEST_KERNEL &&
dso               895 tools/perf/util/symbol.c 		dso__set_loaded(curr_map->dso);
dso              1083 tools/perf/util/symbol.c 		mi = find_module(old_map->dso->short_name, &modules);
dso              1162 tools/perf/util/symbol.c 	struct dso *dso;
dso              1171 tools/perf/util/symbol.c 	map = map__new2(start, md->dso);
dso              1262 tools/perf/util/symbol.c static int dso__load_kcore(struct dso *dso, struct map *map,
dso              1291 tools/perf/util/symbol.c 	md.dso = dso;
dso              1306 tools/perf/util/symbol.c 	dso->is_64_bit = is_64_bit;
dso              1386 tools/perf/util/symbol.c 	if (dso->kernel == DSO_TYPE_GUEST_KERNEL)
dso              1387 tools/perf/util/symbol.c 		dso->binary_type = DSO_BINARY_TYPE__GUEST_KCORE;
dso              1389 tools/perf/util/symbol.c 		dso->binary_type = DSO_BINARY_TYPE__KCORE;
dso              1390 tools/perf/util/symbol.c 	dso__set_long_name(dso, strdup(kcore_filename), true);
dso              1429 tools/perf/util/symbol.c int __dso__load_kallsyms(struct dso *dso, const char *filename,
dso              1441 tools/perf/util/symbol.c 	if (dso__load_all_kallsyms(dso, filename) < 0)
dso              1447 tools/perf/util/symbol.c 	symbols__fixup_end(&dso->symbols);
dso              1448 tools/perf/util/symbol.c 	symbols__fixup_duplicate(&dso->symbols);
dso              1450 tools/perf/util/symbol.c 	if (dso->kernel == DSO_TYPE_GUEST_KERNEL)
dso              1451 tools/perf/util/symbol.c 		dso->symtab_type = DSO_BINARY_TYPE__GUEST_KALLSYMS;
dso              1453 tools/perf/util/symbol.c 		dso->symtab_type = DSO_BINARY_TYPE__KALLSYMS;
dso              1455 tools/perf/util/symbol.c 	if (!no_kcore && !dso__load_kcore(dso, map, filename))
dso              1456 tools/perf/util/symbol.c 		return map_groups__split_kallsyms_for_kcore(kmap->kmaps, dso);
dso              1458 tools/perf/util/symbol.c 		return map_groups__split_kallsyms(kmap->kmaps, dso, delta, map);
dso              1461 tools/perf/util/symbol.c int dso__load_kallsyms(struct dso *dso, const char *filename,
dso              1464 tools/perf/util/symbol.c 	return __dso__load_kallsyms(dso, filename, map, false);
dso              1467 tools/perf/util/symbol.c static int dso__load_perf_map(const char *map_path, struct dso *dso)
dso              1509 tools/perf/util/symbol.c 		symbols__insert(&dso->symbols, sym);
dso              1524 tools/perf/util/symbol.c static bool dso__is_compatible_symtab_type(struct dso *dso, bool kmod,
dso              1535 tools/perf/util/symbol.c 		return !kmod && dso->kernel == DSO_TYPE_USER;
dso              1540 tools/perf/util/symbol.c 		return dso->kernel == DSO_TYPE_KERNEL;
dso              1545 tools/perf/util/symbol.c 		return dso->kernel == DSO_TYPE_GUEST_KERNEL;
dso              1555 tools/perf/util/symbol.c 		return kmod && dso->symtab_type == type;
dso              1606 tools/perf/util/symbol.c int dso__load(struct dso *dso, struct map *map)
dso              1621 tools/perf/util/symbol.c 	const char *map_path = dso->long_name;
dso              1623 tools/perf/util/symbol.c 	perfmap = strncmp(dso->name, "/tmp/perf-", 10) == 0;
dso              1625 tools/perf/util/symbol.c 		if (dso->nsinfo && (dso__find_perf_map(newmapname,
dso              1626 tools/perf/util/symbol.c 		    sizeof(newmapname), &dso->nsinfo) == 0)) {
dso              1631 tools/perf/util/symbol.c 	nsinfo__mountns_enter(dso->nsinfo, &nsc);
dso              1632 tools/perf/util/symbol.c 	pthread_mutex_lock(&dso->lock);
dso              1635 tools/perf/util/symbol.c 	if (dso__loaded(dso)) {
dso              1645 tools/perf/util/symbol.c 	if (dso->kernel) {
dso              1646 tools/perf/util/symbol.c 		if (dso->kernel == DSO_TYPE_KERNEL)
dso              1647 tools/perf/util/symbol.c 			ret = dso__load_kernel_sym(dso, map);
dso              1648 tools/perf/util/symbol.c 		else if (dso->kernel == DSO_TYPE_GUEST_KERNEL)
dso              1649 tools/perf/util/symbol.c 			ret = dso__load_guest_kernel_sym(dso, map);
dso              1652 tools/perf/util/symbol.c 			machine__map_x86_64_entry_trampolines(machine, dso);
dso              1656 tools/perf/util/symbol.c 	dso->adjust_symbols = 0;
dso              1659 tools/perf/util/symbol.c 		ret = dso__load_perf_map(map_path, dso);
dso              1660 tools/perf/util/symbol.c 		dso->symtab_type = ret > 0 ? DSO_BINARY_TYPE__JAVA_JIT :
dso              1672 tools/perf/util/symbol.c 	kmod = dso->symtab_type == DSO_BINARY_TYPE__SYSTEM_PATH_KMODULE ||
dso              1673 tools/perf/util/symbol.c 		dso->symtab_type == DSO_BINARY_TYPE__SYSTEM_PATH_KMODULE_COMP ||
dso              1674 tools/perf/util/symbol.c 		dso->symtab_type == DSO_BINARY_TYPE__GUEST_KMODULE ||
dso              1675 tools/perf/util/symbol.c 		dso->symtab_type == DSO_BINARY_TYPE__GUEST_KMODULE_COMP;
dso              1682 tools/perf/util/symbol.c 	if (!dso->has_build_id &&
dso              1683 tools/perf/util/symbol.c 	    is_regular_file(dso->long_name)) {
dso              1684 tools/perf/util/symbol.c 	    __symbol__join_symfs(name, PATH_MAX, dso->long_name);
dso              1686 tools/perf/util/symbol.c 		dso__set_build_id(dso, build_id);
dso              1706 tools/perf/util/symbol.c 		if (!dso__is_compatible_symtab_type(dso, kmod, symtab_type))
dso              1709 tools/perf/util/symbol.c 		if (dso__read_binary_type_filename(dso, symtab_type,
dso              1718 tools/perf/util/symbol.c 			sirc = symsrc__init(ss, dso, name, symtab_type);
dso              1721 tools/perf/util/symbol.c 			nsinfo__mountns_enter(dso->nsinfo, &nsc);
dso              1729 tools/perf/util/symbol.c 			if (!dso->symsrc_filename)
dso              1730 tools/perf/util/symbol.c 				dso->symsrc_filename = strdup(name);
dso              1761 tools/perf/util/symbol.c 		ret = dso__load_sym(dso, map, syms_ss, runtime_ss, kmod);
dso              1768 tools/perf/util/symbol.c 		nr_plt = dso__synthesize_plt_symbols(dso, runtime_ss);
dso              1777 tools/perf/util/symbol.c 	if (ret < 0 && strstr(dso->name, " (deleted)") != NULL)
dso              1780 tools/perf/util/symbol.c 	dso__set_loaded(dso);
dso              1781 tools/perf/util/symbol.c 	pthread_mutex_unlock(&dso->lock);
dso              1800 tools/perf/util/symbol.c 		rc = strcmp(map->dso->short_name, name);
dso              1817 tools/perf/util/symbol.c int dso__load_vmlinux(struct dso *dso, struct map *map,
dso              1830 tools/perf/util/symbol.c 	if (dso->kernel == DSO_TYPE_GUEST_KERNEL)
dso              1835 tools/perf/util/symbol.c 	if (symsrc__init(&ss, dso, symfs_vmlinux, symtab_type))
dso              1838 tools/perf/util/symbol.c 	err = dso__load_sym(dso, map, &ss, &ss, 0);
dso              1842 tools/perf/util/symbol.c 		if (dso->kernel == DSO_TYPE_GUEST_KERNEL)
dso              1843 tools/perf/util/symbol.c 			dso->binary_type = DSO_BINARY_TYPE__GUEST_VMLINUX;
dso              1845 tools/perf/util/symbol.c 			dso->binary_type = DSO_BINARY_TYPE__VMLINUX;
dso              1846 tools/perf/util/symbol.c 		dso__set_long_name(dso, vmlinux, vmlinux_allocated);
dso              1847 tools/perf/util/symbol.c 		dso__set_loaded(dso);
dso              1854 tools/perf/util/symbol.c int dso__load_vmlinux_path(struct dso *dso, struct map *map)
dso              1863 tools/perf/util/symbol.c 		err = dso__load_vmlinux(dso, map, vmlinux_path[i], false);
dso              1869 tools/perf/util/symbol.c 		filename = dso__build_id_filename(dso, NULL, 0, false);
dso              1871 tools/perf/util/symbol.c 		err = dso__load_vmlinux(dso, map, filename, true);
dso              1927 tools/perf/util/symbol.c static char *dso__find_kallsyms(struct dso *dso, struct map *map)
dso              1934 tools/perf/util/symbol.c 	if (!dso->has_build_id) {
dso              1944 tools/perf/util/symbol.c 		is_host = dso__build_id_equal(dso, host_build_id);
dso              1960 tools/perf/util/symbol.c 	build_id__sprintf(dso->build_id, sizeof(dso->build_id), sbuild_id);
dso              1985 tools/perf/util/symbol.c static int dso__load_kernel_sym(struct dso *dso, struct map *map)
dso              2011 tools/perf/util/symbol.c 		return dso__load_vmlinux(dso, map, symbol_conf.vmlinux_name, false);
dso              2015 tools/perf/util/symbol.c 		err = dso__load_vmlinux_path(dso, map);
dso              2024 tools/perf/util/symbol.c 	kallsyms_allocated_filename = dso__find_kallsyms(dso, map);
dso              2031 tools/perf/util/symbol.c 	err = dso__load_kallsyms(dso, kallsyms_filename, map);
dso              2036 tools/perf/util/symbol.c 	if (err > 0 && !dso__is_kcore(dso)) {
dso              2037 tools/perf/util/symbol.c 		dso->binary_type = DSO_BINARY_TYPE__KALLSYMS;
dso              2038 tools/perf/util/symbol.c 		dso__set_long_name(dso, DSO__NAME_KALLSYMS, false);
dso              2046 tools/perf/util/symbol.c static int dso__load_guest_kernel_sym(struct dso *dso, struct map *map)
dso              2066 tools/perf/util/symbol.c 			err = dso__load_vmlinux(dso, map,
dso              2080 tools/perf/util/symbol.c 	err = dso__load_kallsyms(dso, kallsyms_filename, map);
dso              2083 tools/perf/util/symbol.c 	if (err > 0 && !dso__is_kcore(dso)) {
dso              2084 tools/perf/util/symbol.c 		dso->binary_type = DSO_BINARY_TYPE__GUEST_KALLSYMS;
dso              2085 tools/perf/util/symbol.c 		dso__set_long_name(dso, machine->mmap_name, false);
dso                21 tools/perf/util/symbol.h struct dso;
dso               133 tools/perf/util/symbol.h int dso__load(struct dso *dso, struct map *map);
dso               134 tools/perf/util/symbol.h int dso__load_vmlinux(struct dso *dso, struct map *map,
dso               136 tools/perf/util/symbol.h int dso__load_vmlinux_path(struct dso *dso, struct map *map);
dso               137 tools/perf/util/symbol.h int __dso__load_kallsyms(struct dso *dso, const char *filename, struct map *map,
dso               139 tools/perf/util/symbol.h int dso__load_kallsyms(struct dso *dso, const char *filename, struct map *map);
dso               141 tools/perf/util/symbol.h void dso__insert_symbol(struct dso *dso,
dso               144 tools/perf/util/symbol.h struct symbol *dso__find_symbol(struct dso *dso, u64 addr);
dso               145 tools/perf/util/symbol.h struct symbol *dso__find_symbol_by_name(struct dso *dso, const char *name);
dso               149 tools/perf/util/symbol.h struct symbol *dso__first_symbol(struct dso *dso);
dso               150 tools/perf/util/symbol.h struct symbol *dso__last_symbol(struct dso *dso);
dso               188 tools/perf/util/symbol.h int dso__load_sym(struct dso *dso, struct map *map, struct symsrc *syms_ss,
dso               190 tools/perf/util/symbol.h int dso__synthesize_plt_symbols(struct dso *dso, struct symsrc *ss);
dso               192 tools/perf/util/symbol.h char *dso__demangle_sym(struct dso *dso, int kmodule, const char *elf_name);
dso                62 tools/perf/util/symbol_fprintf.c size_t dso__fprintf_symbols_by_name(struct dso *dso,
dso                69 tools/perf/util/symbol_fprintf.c 	for (nd = rb_first_cached(&dso->symbol_names); nd; nd = rb_next(nd)) {
dso                40 tools/perf/util/symsrc.h int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name, enum dso_binary_type type);
dso               447 tools/perf/util/synthetic-events.c 		size = PERF_ALIGN(pos->dso->long_name_len + 1, sizeof(u64));
dso               457 tools/perf/util/synthetic-events.c 		memcpy(event->mmap.filename, pos->dso->long_name,
dso               458 tools/perf/util/synthetic-events.c 		       pos->dso->long_name_len + 1);
dso              1755 tools/perf/util/synthetic-events.c int perf_event__synthesize_build_id(struct perf_tool *tool, struct dso *pos, u16 misc,
dso                11 tools/perf/util/synthetic-events.h struct dso;
dso                34 tools/perf/util/synthetic-events.h int perf_event__synthesize_build_id(struct perf_tool *tool, struct dso *pos, u16 misc, perf_event__handler_t process, struct machine *machine);
dso                18 tools/perf/util/thread-stack.h struct dso;
dso               446 tools/perf/util/thread.c        if (!thread__find_map(thread, cpumode, ip, &al) || !al.map->dso ||
dso               447 tools/perf/util/thread.c 	   al.map->dso->data.status == DSO_DATA_STATUS_ERROR ||
dso               453 tools/perf/util/thread.c                *is64bit = al.map->dso->is_64_bit;
dso               455 tools/perf/util/thread.c        return dso__data_read_offset(al.map->dso, machine, offset, buf, len);
dso                33 tools/perf/util/unwind-libdw.c 	struct dso *dso = NULL;
dso                41 tools/perf/util/unwind-libdw.c 		dso = al->map->dso;
dso                43 tools/perf/util/unwind-libdw.c 	if (!dso)
dso                56 tools/perf/util/unwind-libdw.c 		mod = dwfl_report_elf(ui->dwfl, dso->short_name,
dso                57 tools/perf/util/unwind-libdw.c 				      (dso->symsrc_filename ? dso->symsrc_filename : dso->long_name), -1, al->map->start - al->map->pgoff,
dso               115 tools/perf/util/unwind-libdw.c 	if (!al.map->dso)
dso               118 tools/perf/util/unwind-libdw.c 	size = dso__data_read_addr(al.map->dso, al.map, ui->machine,
dso               249 tools/perf/util/unwind-libunwind-local.c static int unwind_spec_ehframe(struct dso *dso, struct machine *machine,
dso               258 tools/perf/util/unwind-libunwind-local.c 	r = dso__data_read_offset(dso, machine, offset,
dso               272 tools/perf/util/unwind-libunwind-local.c static int read_unwind_spec_eh_frame(struct dso *dso, struct machine *machine,
dso               277 tools/perf/util/unwind-libunwind-local.c 	u64 offset = dso->data.eh_frame_hdr_offset;
dso               280 tools/perf/util/unwind-libunwind-local.c 		fd = dso__data_get_fd(dso, machine);
dso               286 tools/perf/util/unwind-libunwind-local.c 		dso->data.eh_frame_hdr_offset = offset;
dso               287 tools/perf/util/unwind-libunwind-local.c 		dso__data_put_fd(dso);
dso               291 tools/perf/util/unwind-libunwind-local.c 		ret = unwind_spec_ehframe(dso, machine, offset,
dso               299 tools/perf/util/unwind-libunwind-local.c static int read_unwind_spec_debug_frame(struct dso *dso,
dso               303 tools/perf/util/unwind-libunwind-local.c 	u64 ofs = dso->data.debug_frame_offset;
dso               312 tools/perf/util/unwind-libunwind-local.c 		fd = dso__data_get_fd(dso, machine);
dso               315 tools/perf/util/unwind-libunwind-local.c 			dso__data_put_fd(dso);
dso               319 tools/perf/util/unwind-libunwind-local.c 			fd = open(dso->symsrc_filename, O_RDONLY);
dso               331 tools/perf/util/unwind-libunwind-local.c 				dso, DSO_BINARY_TYPE__DEBUGLINK,
dso               342 tools/perf/util/unwind-libunwind-local.c 				if (dso->symsrc_filename != NULL) {
dso               346 tools/perf/util/unwind-libunwind-local.c 							dso->symsrc_filename,
dso               348 tools/perf/util/unwind-libunwind-local.c 					zfree(&dso->symsrc_filename);
dso               350 tools/perf/util/unwind-libunwind-local.c 				dso->symsrc_filename = debuglink;
dso               356 tools/perf/util/unwind-libunwind-local.c 		dso->data.debug_frame_offset = ofs;
dso               384 tools/perf/util/unwind-libunwind-local.c 	if (!map || !map->dso)
dso               387 tools/perf/util/unwind-libunwind-local.c 	pr_debug("unwind: find_proc_info dso %s\n", map->dso->name);
dso               390 tools/perf/util/unwind-libunwind-local.c 	if (!read_unwind_spec_eh_frame(map->dso, ui->machine,
dso               407 tools/perf/util/unwind-libunwind-local.c 	    !read_unwind_spec_debug_frame(map->dso, ui->machine, &segbase)) {
dso               408 tools/perf/util/unwind-libunwind-local.c 		int fd = dso__data_get_fd(map->dso, ui->machine);
dso               409 tools/perf/util/unwind-libunwind-local.c 		int is_exec = elf_is_exec(fd, map->dso->name);
dso               414 tools/perf/util/unwind-libunwind-local.c 			dso__data_put_fd(map->dso);
dso               416 tools/perf/util/unwind-libunwind-local.c 		symfile = map->dso->symsrc_filename ?: map->dso->name;
dso               476 tools/perf/util/unwind-libunwind-local.c 	if (!map->dso)
dso               479 tools/perf/util/unwind-libunwind-local.c 	size = dso__data_read_addr(map->dso, map, ui->machine,
dso                34 tools/perf/util/unwind-libunwind.c 			 map->dso->name);
dso                44 tools/perf/util/unwind-libunwind.c 	dso_type = dso__type(map->dso, mg->machine);
dso               127 tools/perf/util/vdso.c static struct dso *__machine__addnew_vdso(struct machine *machine, const char *short_name,
dso               130 tools/perf/util/vdso.c 	struct dso *dso;
dso               132 tools/perf/util/vdso.c 	dso = dso__new(short_name);
dso               133 tools/perf/util/vdso.c 	if (dso != NULL) {
dso               134 tools/perf/util/vdso.c 		__dsos__add(&machine->dsos, dso);
dso               135 tools/perf/util/vdso.c 		dso__set_long_name(dso, long_name, false);
dso               138 tools/perf/util/vdso.c 	return dso;
dso               148 tools/perf/util/vdso.c 		struct dso *dso = map->dso;
dso               149 tools/perf/util/vdso.c 		if (!dso || dso->long_name[0] != '/')
dso               151 tools/perf/util/vdso.c 		dso_type = dso__type(dso, machine);
dso               235 tools/perf/util/vdso.c static struct dso *__machine__findnew_compat(struct machine *machine,
dso               239 tools/perf/util/vdso.c 	struct dso *dso;
dso               241 tools/perf/util/vdso.c 	dso = __dsos__find(&machine->dsos, vdso_file->dso_name, true);
dso               242 tools/perf/util/vdso.c 	if (dso)
dso               249 tools/perf/util/vdso.c 	dso = __machine__addnew_vdso(machine, vdso_file->dso_name, file_name);
dso               251 tools/perf/util/vdso.c 	return dso;
dso               257 tools/perf/util/vdso.c 					  struct dso **dso)
dso               274 tools/perf/util/vdso.c 		*dso = __machine__findnew_compat(machine, &vdso_info->vdso32);
dso               277 tools/perf/util/vdso.c 		*dso = __machine__findnew_compat(machine, &vdso_info->vdsox32);
dso               288 tools/perf/util/vdso.c static struct dso *machine__find_vdso(struct machine *machine,
dso               291 tools/perf/util/vdso.c 	struct dso *dso = NULL;
dso               297 tools/perf/util/vdso.c 		dso = __dsos__find(&machine->dsos, DSO__NAME_VDSO32, true);
dso               298 tools/perf/util/vdso.c 		if (!dso) {
dso               299 tools/perf/util/vdso.c 			dso = __dsos__find(&machine->dsos, DSO__NAME_VDSO,
dso               301 tools/perf/util/vdso.c 			if (dso && dso_type != dso__type(dso, machine))
dso               302 tools/perf/util/vdso.c 				dso = NULL;
dso               306 tools/perf/util/vdso.c 		dso = __dsos__find(&machine->dsos, DSO__NAME_VDSOX32, true);
dso               311 tools/perf/util/vdso.c 		dso = __dsos__find(&machine->dsos, DSO__NAME_VDSO, true);
dso               315 tools/perf/util/vdso.c 	return dso;
dso               318 tools/perf/util/vdso.c struct dso *machine__findnew_vdso(struct machine *machine,
dso               322 tools/perf/util/vdso.c 	struct dso *dso = NULL;
dso               332 tools/perf/util/vdso.c 	dso = machine__find_vdso(machine, thread);
dso               333 tools/perf/util/vdso.c 	if (dso)
dso               337 tools/perf/util/vdso.c 	if (__machine__findnew_vdso_compat(machine, thread, vdso_info, &dso))
dso               341 tools/perf/util/vdso.c 	dso = __dsos__find(&machine->dsos, DSO__NAME_VDSO, true);
dso               342 tools/perf/util/vdso.c 	if (!dso) {
dso               347 tools/perf/util/vdso.c 			dso = __machine__addnew_vdso(machine, DSO__NAME_VDSO, file);
dso               351 tools/perf/util/vdso.c 	dso__get(dso);
dso               353 tools/perf/util/vdso.c 	return dso;
dso               356 tools/perf/util/vdso.c bool dso__is_vdso(struct dso *dso)
dso               358 tools/perf/util/vdso.c 	return !strcmp(dso->short_name, DSO__NAME_VDSO) ||
dso               359 tools/perf/util/vdso.c 	       !strcmp(dso->short_name, DSO__NAME_VDSO32) ||
dso               360 tools/perf/util/vdso.c 	       !strcmp(dso->short_name, DSO__NAME_VDSOX32);
dso                20 tools/perf/util/vdso.h struct dso;
dso                22 tools/perf/util/vdso.h bool dso__is_vdso(struct dso *dso);
dso                27 tools/perf/util/vdso.h struct dso *machine__findnew_vdso(struct machine *machine, struct thread *thread);