Lines Matching refs:nr_cpus
13 void perf_cpu_map__set_nr(struct perf_cpu_map *map, int nr_cpus)
15 RC_CHK_ACCESS(map)->nr = nr_cpus;
18 struct perf_cpu_map *perf_cpu_map__alloc(int nr_cpus)
20 RC_STRUCT(perf_cpu_map) *cpus = malloc(sizeof(*cpus) + sizeof(struct perf_cpu) * nr_cpus);
24 cpus->nr = nr_cpus;
72 int nr_cpus;
74 nr_cpus = sysconf(_SC_NPROCESSORS_ONLN);
75 if (nr_cpus < 0)
78 cpus = perf_cpu_map__alloc(nr_cpus);
82 for (i = 0; i < nr_cpus; ++i)
107 static struct perf_cpu_map *cpu_map__trim_new(int nr_cpus, const struct perf_cpu *tmp_cpus)
109 size_t payload_size = nr_cpus * sizeof(struct perf_cpu);
110 struct perf_cpu_map *cpus = perf_cpu_map__alloc(nr_cpus);
115 qsort(RC_CHK_ACCESS(cpus)->map, nr_cpus, sizeof(struct perf_cpu), cmp_cpu);
118 for (i = 0; i < nr_cpus; i++) {
127 assert(j <= nr_cpus);
135 int nr_cpus = 0;
148 int new_max = nr_cpus + cpu - prev - 1;
162 tmp_cpus[nr_cpus++].cpu = prev;
164 if (nr_cpus == max_entries) {
172 tmp_cpus[nr_cpus++].cpu = cpu;
181 if (nr_cpus > 0)
182 cpus = cpu_map__trim_new(nr_cpus, tmp_cpus);
209 int i, nr_cpus = 0;
250 for (i = 0; i < nr_cpus; i++)
254 if (nr_cpus == max_entries) {
261 tmp_cpus[nr_cpus++].cpu = (int)start_cpu;
269 if (nr_cpus > 0)
270 cpus = cpu_map__trim_new(nr_cpus, tmp_cpus);