Lines Matching refs:queues

221 int auxtrace_queues__init_nr(struct auxtrace_queues *queues, int nr_queues)  in auxtrace_queues__init_nr()  argument
223 queues->nr_queues = nr_queues; in auxtrace_queues__init_nr()
224 queues->queue_array = auxtrace_alloc_queue_array(queues->nr_queues); in auxtrace_queues__init_nr()
225 if (!queues->queue_array) in auxtrace_queues__init_nr()
230 int auxtrace_queues__init(struct auxtrace_queues *queues) in auxtrace_queues__init() argument
232 return auxtrace_queues__init_nr(queues, AUXTRACE_INIT_NR_QUEUES); in auxtrace_queues__init()
235 static int auxtrace_queues__grow(struct auxtrace_queues *queues, in auxtrace_queues__grow() argument
238 unsigned int nr_queues = queues->nr_queues; in auxtrace_queues__grow()
248 if (nr_queues < queues->nr_queues || nr_queues < new_nr_queues) in auxtrace_queues__grow()
255 for (i = 0; i < queues->nr_queues; i++) { in auxtrace_queues__grow()
256 list_splice_tail(&queues->queue_array[i].head, in auxtrace_queues__grow()
258 queue_array[i].tid = queues->queue_array[i].tid; in auxtrace_queues__grow()
259 queue_array[i].cpu = queues->queue_array[i].cpu; in auxtrace_queues__grow()
260 queue_array[i].set = queues->queue_array[i].set; in auxtrace_queues__grow()
261 queue_array[i].priv = queues->queue_array[i].priv; in auxtrace_queues__grow()
264 queues->nr_queues = nr_queues; in auxtrace_queues__grow()
265 queues->queue_array = queue_array; in auxtrace_queues__grow()
292 static int auxtrace_queues__queue_buffer(struct auxtrace_queues *queues, in auxtrace_queues__queue_buffer() argument
299 if (idx >= queues->nr_queues) { in auxtrace_queues__queue_buffer()
300 err = auxtrace_queues__grow(queues, idx + 1); in auxtrace_queues__queue_buffer()
305 queue = &queues->queue_array[idx]; in auxtrace_queues__queue_buffer()
313 buffer->buffer_nr = queues->next_buffer_nr++; in auxtrace_queues__queue_buffer()
317 queues->new_data = true; in auxtrace_queues__queue_buffer()
318 queues->populated = true; in auxtrace_queues__queue_buffer()
326 static int auxtrace_queues__split_buffer(struct auxtrace_queues *queues, in auxtrace_queues__split_buffer() argument
341 err = auxtrace_queues__queue_buffer(queues, idx, b); in auxtrace_queues__split_buffer()
364 static int auxtrace_queues__add_buffer(struct auxtrace_queues *queues, in auxtrace_queues__add_buffer() argument
389 err = auxtrace_queues__split_buffer(queues, idx, buffer); in auxtrace_queues__add_buffer()
394 err = auxtrace_queues__queue_buffer(queues, idx, buffer); in auxtrace_queues__add_buffer()
409 int auxtrace_queues__add_event(struct auxtrace_queues *queues, in auxtrace_queues__add_event() argument
425 return auxtrace_queues__add_buffer(queues, session, idx, &buffer, in auxtrace_queues__add_event()
429 static int auxtrace_queues__add_indexed_event(struct auxtrace_queues *queues, in auxtrace_queues__add_indexed_event() argument
449 err = auxtrace_queues__add_event(queues, session, event, in auxtrace_queues__add_indexed_event()
456 void auxtrace_queues__free(struct auxtrace_queues *queues) in auxtrace_queues__free() argument
460 for (i = 0; i < queues->nr_queues; i++) { in auxtrace_queues__free()
461 while (!list_empty(&queues->queue_array[i].head)) { in auxtrace_queues__free()
464 buffer = list_entry(queues->queue_array[i].head.next, in auxtrace_queues__free()
471 zfree(&queues->queue_array); in auxtrace_queues__free()
472 queues->nr_queues = 0; in auxtrace_queues__free()
994 static int auxtrace_queues__process_index_entry(struct auxtrace_queues *queues, in auxtrace_queues__process_index_entry() argument
998 return auxtrace_queues__add_indexed_event(queues, session, in auxtrace_queues__process_index_entry()
1002 int auxtrace_queues__process_index(struct auxtrace_queues *queues, in auxtrace_queues__process_index() argument
1016 err = auxtrace_queues__process_index_entry(queues, in auxtrace_queues__process_index()
1042 struct auxtrace_queue *auxtrace_queues__sample_queue(struct auxtrace_queues *queues, in auxtrace_queues__sample_queue() argument
1060 if (idx >= queues->nr_queues) in auxtrace_queues__sample_queue()
1063 return &queues->queue_array[idx]; in auxtrace_queues__sample_queue()
1066 int auxtrace_queues__add_sample(struct auxtrace_queues *queues, in auxtrace_queues__add_sample() argument
1092 return auxtrace_queues__add_buffer(queues, session, idx, &buffer, NULL); in auxtrace_queues__add_sample()