Home
last modified time | relevance | path

Searched refs:mg (Results 1 – 25 of 25) sorted by relevance

/tools/perf/util/
Dunwind-libunwind.c15 static void unwind__register_ops(struct map_groups *mg, in unwind__register_ops() argument
18 mg->unwind_libunwind_ops = ops; in unwind__register_ops()
21 int unwind__prepare_access(struct map_groups *mg, struct map *map, in unwind__prepare_access() argument
32 if (mg->addr_space) { in unwind__prepare_access()
41 if (!mg->machine->env || !mg->machine->env->arch) in unwind__prepare_access()
44 dso_type = dso__type(map->dso, mg->machine); in unwind__prepare_access()
48 arch = perf_env__arch(mg->machine->env); in unwind__prepare_access()
63 unwind__register_ops(mg, ops); in unwind__prepare_access()
65 err = mg->unwind_libunwind_ops->prepare_access(mg); in unwind__prepare_access()
71 void unwind__flush_access(struct map_groups *mg) in unwind__flush_access() argument
[all …]
Dmap_groups.h49 void map_groups__delete(struct map_groups *mg);
50 bool map_groups__empty(struct map_groups *mg);
52 static inline struct map_groups *map_groups__get(struct map_groups *mg) in map_groups__get() argument
54 if (mg) in map_groups__get()
55 refcount_inc(&mg->refcnt); in map_groups__get()
56 return mg; in map_groups__get()
59 void map_groups__put(struct map_groups *mg);
60 void map_groups__init(struct map_groups *mg, struct machine *machine);
61 void map_groups__exit(struct map_groups *mg);
63 size_t map_groups__fprintf(struct map_groups *mg, FILE *fp);
[all …]
Dunwind.h23 int (*prepare_access)(struct map_groups *mg);
24 void (*flush_access)(struct map_groups *mg);
25 void (*finish_access)(struct map_groups *mg);
50 int unwind__prepare_access(struct map_groups *mg, struct map *map,
52 void unwind__flush_access(struct map_groups *mg);
53 void unwind__finish_access(struct map_groups *mg);
55 static inline int unwind__prepare_access(struct map_groups *mg __maybe_unused, in unwind__prepare_access()
62 static inline void unwind__flush_access(struct map_groups *mg __maybe_unused) {} in unwind__flush_access()
63 static inline void unwind__finish_access(struct map_groups *mg __maybe_unused) {} in unwind__finish_access()
76 static inline int unwind__prepare_access(struct map_groups *mg __maybe_unused, in unwind__prepare_access()
[all …]
Dmap.c581 void map_groups__init(struct map_groups *mg, struct machine *machine) in map_groups__init() argument
583 maps__init(&mg->maps); in map_groups__init()
584 mg->machine = machine; in map_groups__init()
585 refcount_set(&mg->refcnt, 1); in map_groups__init()
588 void map_groups__insert(struct map_groups *mg, struct map *map) in map_groups__insert() argument
590 maps__insert(&mg->maps, map); in map_groups__insert()
591 map->groups = mg; in map_groups__insert()
630 void map_groups__exit(struct map_groups *mg) in map_groups__exit() argument
632 maps__exit(&mg->maps); in map_groups__exit()
635 bool map_groups__empty(struct map_groups *mg) in map_groups__empty() argument
[all …]
Dthread.c27 thread->mg = map_groups__new(machine); in thread__init_map_groups()
31 thread->mg = map_groups__get(leader->mg); in thread__init_map_groups()
36 return thread->mg ? 0 : -1; in thread__init_map_groups()
89 if (thread->mg) { in thread__delete()
90 map_groups__put(thread->mg); in thread__delete()
91 thread->mg = NULL; in thread__delete()
254 unwind__flush_access(thread->mg); in ____thread__set_comm()
327 map_groups__fprintf(thread->mg, fp); in thread__fprintf()
334 ret = unwind__prepare_access(thread->mg, map, NULL); in thread__insert_map()
338 map_groups__fixup_overlappings(thread->mg, map, stderr); in thread__insert_map()
[all …]
Dunwind-libunwind-local.c618 static int _unwind__prepare_access(struct map_groups *mg) in _unwind__prepare_access() argument
620 mg->addr_space = unw_create_addr_space(&accessors, 0); in _unwind__prepare_access()
621 if (!mg->addr_space) { in _unwind__prepare_access()
626 unw_set_caching_policy(mg->addr_space, UNW_CACHE_GLOBAL); in _unwind__prepare_access()
630 static void _unwind__flush_access(struct map_groups *mg) in _unwind__flush_access() argument
632 unw_flush_cache(mg->addr_space, 0, 0); in _unwind__flush_access()
635 static void _unwind__finish_access(struct map_groups *mg) in _unwind__finish_access() argument
637 unw_destroy_addr_space(mg->addr_space); in _unwind__finish_access()
662 addr_space = ui->thread->mg->addr_space; in get_entries()
711 .machine = thread->mg->machine, in _unwind__get_entries()
Devent.c460 struct map_groups *mg = thread->mg; in thread__find_map() local
461 struct machine *machine = mg->machine; in thread__find_map()
477 mg = &machine->kmaps; in thread__find_map()
483 mg = &machine->kmaps; in thread__find_map()
503 al->map = map_groups__find(mg, al->addr); in thread__find_map()
526 struct machine *machine = thread->mg->machine; in thread__find_map_fb()
Dmetricgroup.c341 char *mg = strdup(g); in metricgroup__print() local
343 if (!mg) in metricgroup__print()
345 omg = mg; in metricgroup__print()
346 while ((g = strsep(&mg, ";")) != NULL) { in metricgroup__print()
Dmachine.c410 if (!leader->mg) in machine__update_thread_pid()
411 leader->mg = map_groups__new(machine); in machine__update_thread_pid()
413 if (!leader->mg) in machine__update_thread_pid()
416 if (th->mg == leader->mg) in machine__update_thread_pid()
419 if (th->mg) { in machine__update_thread_pid()
425 if (!map_groups__empty(th->mg)) in machine__update_thread_pid()
428 map_groups__put(th->mg); in machine__update_thread_pid()
431 th->mg = map_groups__get(leader->mg); in machine__update_thread_pid()
1264 static int map_groups__set_module_path(struct map_groups *mg, const char *path, in map_groups__set_module_path() argument
1268 struct map *map = map_groups__find_by_name(mg, m->name); in map_groups__set_module_path()
[all …]
Dthread.h28 struct map_groups *mg; member
Dthread-stack.c137 if (thread->mg && thread->mg->machine) { in thread_stack__init()
138 struct machine *machine = thread->mg->machine; in thread_stack__init()
Dunwind-libdw.c229 .machine = thread->mg->machine, in unwind__get_entries()
Dvdso.c145 struct map *map = map_groups__first(thread->mg); in machine__thread_dso_type()
Dsymbol.c243 void map_groups__fixup_end(struct map_groups *mg) in map_groups__fixup_end() argument
245 struct maps *maps = &mg->maps; in map_groups__fixup_end()
1057 struct map *map_groups__first(struct map_groups *mg) in map_groups__first() argument
1059 return maps__first(&mg->maps); in map_groups__first()
1791 struct map *map_groups__find_by_name(struct map_groups *mg, const char *name) in map_groups__find_by_name() argument
1793 struct maps *maps = &mg->maps; in map_groups__find_by_name()
Dsymbol.h199 void map_groups__fixup_end(struct map_groups *mg);
/tools/perf/tests/
Dthread-mg-share.c15 struct map_groups *mg; in test__thread_mg_share() local
45 mg = leader->mg; in test__thread_mg_share()
46 TEST_ASSERT_EQUAL("wrong refcnt", refcount_read(&mg->refcnt), 4); in test__thread_mg_share()
49 TEST_ASSERT_VAL("map groups don't match", mg == t1->mg); in test__thread_mg_share()
50 TEST_ASSERT_VAL("map groups don't match", mg == t2->mg); in test__thread_mg_share()
51 TEST_ASSERT_VAL("map groups don't match", mg == t3->mg); in test__thread_mg_share()
73 other_mg = other->mg; in test__thread_mg_share()
76 TEST_ASSERT_VAL("map groups don't match", other_mg == other_leader->mg); in test__thread_mg_share()
80 TEST_ASSERT_EQUAL("wrong refcnt", refcount_read(&mg->refcnt), 3); in test__thread_mg_share()
83 TEST_ASSERT_EQUAL("wrong refcnt", refcount_read(&mg->refcnt), 2); in test__thread_mg_share()
[all …]
Dmap_groups.c16 static int check_maps(struct map_def *merged, unsigned int size, struct map_groups *mg) in check_maps() argument
21 map = map_groups__first(mg); in check_maps()
39 struct map_groups mg; in test__map_groups__merge_in() local
68 map_groups__init(&mg, NULL); in test__map_groups__merge_in()
78 map_groups__insert(&mg, map); in test__map_groups__merge_in()
103 ret = map_groups__merge_in(&mg, map_kcore1); in test__map_groups__merge_in()
106 ret = check_maps(merged12, ARRAY_SIZE(merged12), &mg); in test__map_groups__merge_in()
109 ret = map_groups__merge_in(&mg, map_kcore2); in test__map_groups__merge_in()
112 ret = check_maps(merged12, ARRAY_SIZE(merged12), &mg); in test__map_groups__merge_in()
115 ret = map_groups__merge_in(&mg, map_kcore3); in test__map_groups__merge_in()
[all …]
DBuild30 perf-y += thread-mg-share.o
Dcode-reading.c278 ret_len = dso__data_read_offset(al.map->dso, thread->mg->machine, in read_object_code()
/tools/perf/arch/arm64/tests/
Ddwarf-unwind.c29 map = map_groups__find(thread->mg, (u64)sp); in sample_ustack()
/tools/perf/arch/powerpc/tests/
Ddwarf-unwind.c30 map = map_groups__find(thread->mg, (u64)sp); in sample_ustack()
/tools/perf/arch/arm/tests/
Ddwarf-unwind.c29 map = map_groups__find(thread->mg, (u64)sp); in sample_ustack()
/tools/perf/arch/x86/tests/
Ddwarf-unwind.c30 map = map_groups__find(thread->mg, (u64)sp); in sample_ustack()
/tools/perf/
Dbuiltin-report.c749 static int map_groups__fprintf_task(struct map_groups *mg, int indent, FILE *fp) in map_groups__fprintf_task() argument
751 return maps__fprintf_task(&mg->maps, indent, fp); in map_groups__fprintf_task()
764 map_groups__fprintf_task(thread->mg, comm_indent, fp); in task__print_level()
/tools/perf/ui/stdio/
Dhist.c861 map_groups__fprintf(h->thread->mg, fp); in hists__fprintf()