Lines Matching defs:packet_queue

99 int cs_etm_decoder__get_packet(struct cs_etm_packet_queue *packet_queue,
102 if (!packet_queue || !packet)
106 if (packet_queue->packet_count == 0)
117 packet_queue->head = (packet_queue->head + 1) &
120 *packet = packet_queue->packet_buffer[packet_queue->head];
122 packet_queue->packet_count--;
264 struct cs_etm_packet_queue *packet_queue,
270 if (!packet_queue->next_cs_timestamp)
273 estimated_ts = packet_queue->cs_timestamp +
274 cs_etm_decoder__dec_instr_count_to_ns(&packet_queue->instr_count);
277 packet_queue->cs_timestamp = min(packet_queue->next_cs_timestamp, estimated_ts);
291 struct cs_etm_packet_queue *packet_queue;
296 packet_queue = cs_etm__etmq_get_packet_queue(etmq, trace_chan_id);
297 if (!packet_queue)
312 if (packet_queue->next_cs_timestamp) {
317 packet_queue->cs_timestamp = packet_queue->next_cs_timestamp;
318 packet_queue->next_cs_timestamp = converted_timestamp;
328 packet_queue->cs_timestamp = 0;
334 } else if (packet_queue->instr_count / INSTR_PER_NS > converted_timestamp) {
336 * Sanity check that the elem->timestamp - packet_queue->instr_count would not
339 packet_queue->cs_timestamp = 0;
351 (packet_queue->instr_count / INSTR_PER_NS);
352 packet_queue->cs_timestamp = max(packet_queue->cs_timestamp, estimated_first_ts);
354 packet_queue->next_cs_timestamp = converted_timestamp;
355 packet_queue->instr_count = 0;
365 cs_etm_decoder__reset_timestamp(struct cs_etm_packet_queue *packet_queue)
367 packet_queue->next_cs_timestamp = 0;
368 packet_queue->instr_count = 0;
373 struct cs_etm_packet_queue *packet_queue,
380 if (packet_queue->packet_count >= CS_ETM_PACKET_MAX_BUFFER - 1)
386 et = packet_queue->tail;
388 packet_queue->tail = et;
389 packet_queue->packet_count++;
391 packet_queue->packet_buffer[et].sample_type = sample_type;
392 packet_queue->packet_buffer[et].isa = CS_ETM_ISA_UNKNOWN;
393 packet_queue->packet_buffer[et].cpu = cpu;
394 packet_queue->packet_buffer[et].start_addr = CS_ETM_INVAL_ADDR;
395 packet_queue->packet_buffer[et].end_addr = CS_ETM_INVAL_ADDR;
396 packet_queue->packet_buffer[et].instr_count = 0;
397 packet_queue->packet_buffer[et].last_instr_taken_branch = false;
398 packet_queue->packet_buffer[et].last_instr_size = 0;
399 packet_queue->packet_buffer[et].last_instr_type = 0;
400 packet_queue->packet_buffer[et].last_instr_subtype = 0;
401 packet_queue->packet_buffer[et].last_instr_cond = 0;
402 packet_queue->packet_buffer[et].flags = 0;
403 packet_queue->packet_buffer[et].exception_number = UINT32_MAX;
404 packet_queue->packet_buffer[et].trace_chan_id = trace_chan_id;
405 packet_queue->packet_buffer[et].el = ocsd_EL_unknown;
406 packet_queue->packet_buffer[et].tid = -1;
408 if (packet_queue->packet_count == CS_ETM_PACKET_MAX_BUFFER - 1)
416 struct cs_etm_packet_queue *packet_queue,
423 ret = cs_etm_decoder__buffer_packet(etmq, packet_queue, trace_chan_id,
428 packet = &packet_queue->packet_buffer[packet_queue->tail];
475 packet_queue->instr_count += elem->num_instr_range;
477 ret = cs_etm_decoder__do_soft_timestamp(etmq, packet_queue,
527 struct cs_etm_packet_queue *packet_queue,
558 ret = cs_etm_decoder__buffer_packet(etmq, packet_queue, trace_chan_id,
563 packet = &packet_queue->packet_buffer[packet_queue->tail];
571 cs_etm_decoder__reset_timestamp(packet_queue);
586 struct cs_etm_packet_queue *packet_queue;
589 packet_queue = cs_etm__etmq_get_packet_queue(etmq, trace_chan_id);
590 if (!packet_queue)
598 resp = cs_etm_decoder__buffer_discontinuity(etmq, packet_queue,
601 resp = cs_etm_decoder__buffer_range(etmq, packet_queue, elem,
604 resp = cs_etm_decoder__buffer_exception(etmq, packet_queue, elem,
607 resp = cs_etm_decoder__buffer_exception_ret(etmq, packet_queue,
614 resp = cs_etm_decoder__set_tid(etmq, packet_queue,