Lines Matching +full:- +full:- +full:threads
1 // SPDX-License-Identifier: GPL-2.0
12 size_t size = (nr - start) * sizeof(map->map[0]); in perf_thread_map__reset()
14 memset(&map->map[start], 0, size); in perf_thread_map__reset()
15 map->err_thread = -1; in perf_thread_map__reset()
20 size_t size = sizeof(*map) + sizeof(map->map[0]) * nr; in perf_thread_map__realloc()
21 int start = map ? map->nr : 0; in perf_thread_map__realloc()
37 map->map[thread].pid = pid; in perf_thread_map__set_pid()
42 return map->map[thread].comm; in perf_thread_map__comm()
47 struct perf_thread_map *threads = thread_map__alloc(1); in perf_thread_map__new_dummy() local
49 if (threads != NULL) { in perf_thread_map__new_dummy()
50 perf_thread_map__set_pid(threads, 0, -1); in perf_thread_map__new_dummy()
51 threads->nr = 1; in perf_thread_map__new_dummy()
52 refcount_set(&threads->refcnt, 1); in perf_thread_map__new_dummy()
54 return threads; in perf_thread_map__new_dummy()
57 static void perf_thread_map__delete(struct perf_thread_map *threads) in perf_thread_map__delete() argument
59 if (threads) { in perf_thread_map__delete()
62 WARN_ONCE(refcount_read(&threads->refcnt) != 0, in perf_thread_map__delete()
64 for (i = 0; i < threads->nr; i++) in perf_thread_map__delete()
65 free(perf_thread_map__comm(threads, i)); in perf_thread_map__delete()
66 free(threads); in perf_thread_map__delete()
73 refcount_inc(&map->refcnt); in perf_thread_map__get()
79 if (map && refcount_dec_and_test(&map->refcnt)) in perf_thread_map__put()
83 int perf_thread_map__nr(struct perf_thread_map *threads) in perf_thread_map__nr() argument
85 return threads ? threads->nr : 1; in perf_thread_map__nr()
90 return map->map[thread].pid; in perf_thread_map__pid()