Lines Matching refs:packet
183 struct intel_pt_pkt packet; member
514 static uint64_t intel_pt_calc_ip(const struct intel_pt_pkt *packet, in intel_pt_calc_ip() argument
519 switch (packet->count) { in intel_pt_calc_ip()
522 packet->payload; in intel_pt_calc_ip()
526 packet->payload; in intel_pt_calc_ip()
529 ip = packet->payload; in intel_pt_calc_ip()
536 packet->payload; in intel_pt_calc_ip()
539 ip = packet->payload; in intel_pt_calc_ip()
550 decoder->last_ip = intel_pt_calc_ip(&decoder->packet, decoder->last_ip); in intel_pt_set_last_ip()
562 intel_pt_log_packet(&decoder->packet, decoder->pkt_len, decoder->pos, in intel_pt_decoder_log_packet()
580 decoder->tx_flags = decoder->packet.payload & INTEL_PT_IN_TX; in intel_pt_update_in_tx()
585 decoder->pip_payload = decoder->packet.payload; in intel_pt_update_pip()
701 ret = intel_pt_get_packet(buf, len, &decoder->packet, &decoder->pkt_ctx); in intel_pt_get_split_packet()
721 struct intel_pt_pkt packet; member
755 ret = intel_pt_get_packet(buf, len, &pkt_info.packet, in intel_pt_pkt_lookahead()
763 } while (pkt_info.packet.type == INTEL_PT_PAD); in intel_pt_pkt_lookahead()
769 pkt_info.last_packet_type = pkt_info.packet.type; in intel_pt_pkt_lookahead()
816 switch (pkt_info->packet.type) { in intel_pt_calc_cyc_cb()
844 mtc = pkt_info->packet.payload; in intel_pt_calc_cyc_cb()
884 timestamp = pkt_info->packet.payload | in intel_pt_calc_cyc_cb()
907 ctc = pkt_info->packet.payload; in intel_pt_calc_cyc_cb()
908 fc = pkt_info->packet.count; in intel_pt_calc_cyc_cb()
929 data->cycle_cnt += pkt_info->packet.payload; in intel_pt_calc_cyc_cb()
933 cbr = pkt_info->packet.payload; in intel_pt_calc_cyc_cb()
1016 decoder->last_packet_type = decoder->packet.type; in intel_pt_get_next_packet()
1031 &decoder->packet, &decoder->pkt_ctx); in intel_pt_get_next_packet()
1044 } while (decoder->packet.type == INTEL_PT_PAD); in intel_pt_get_next_packet()
1269 bool iflag = decoder->packet.count & INTEL_PT_IFLAG; in intel_pt_mode_exec_status()
1271 decoder->exec_mode = decoder->packet.payload; in intel_pt_mode_exec_status()
1280 bool iflag = decoder->packet.count & INTEL_PT_IFLAG; in intel_pt_mode_exec()
1282 decoder->exec_mode = decoder->packet.payload; in intel_pt_mode_exec()
1498 if (decoder->packet.count == 0) { in intel_pt_walk_tip()
1508 if (decoder->packet.count == 0) { in intel_pt_walk_tip()
1554 switch (pkt_info->packet.type) { in intel_pt_eptw_lookahead_cb()
1587 if (nr_bits > pkt_info->packet.count) in intel_pt_eptw_lookahead_cb()
1588 nr_bits = pkt_info->packet.count; in intel_pt_eptw_lookahead_cb()
1590 data->payload |= pkt_info->packet.payload >> (64 - nr_bits); in intel_pt_eptw_lookahead_cb()
1683 if (decoder->packet.type != INTEL_PT_TIP || in intel_pt_walk_tnt()
1684 decoder->packet.count == 0) { in intel_pt_walk_tnt()
1742 fup_tx_flags = decoder->packet.payload & in intel_pt_mode_tsx()
1747 if (decoder->packet.type == INTEL_PT_FUP) { in intel_pt_mode_tsx()
1767 .type = decoder->packet.count, in intel_pt_evd()
1768 .payload = decoder->packet.payload, in intel_pt_evd()
1810 timestamp = intel_pt_8b_tsc(decoder->packet.payload, in intel_pt_calc_tsc_timestamp()
1817 timestamp = decoder->packet.payload | in intel_pt_calc_tsc_timestamp()
1909 uint32_t ctc = decoder->packet.payload; in intel_pt_calc_tma()
1910 uint32_t fc = decoder->packet.count; in intel_pt_calc_tma()
1946 mtc = decoder->packet.payload; in intel_pt_calc_mtc_timestamp()
1994 unsigned int cbr = decoder->packet.payload & 0xff; in intel_pt_calc_cbr()
1996 decoder->cbr_payload = decoder->packet.payload; in intel_pt_calc_cbr()
2015 decoder->cycle_cnt += decoder->packet.payload; in intel_pt_calc_cyc_timestamp()
2017 decoder->tot_cyc_cnt += decoder->packet.payload; in intel_pt_calc_cyc_timestamp()
2047 decoder->blk_type = decoder->packet.payload; in intel_pt_bbp()
2050 decoder->state.items.is_32_bit = decoder->packet.count; in intel_pt_bbp()
2062 uint32_t id = decoder->packet.count; in intel_pt_bip()
2078 decoder->state.items.val[pos][id] = decoder->packet.payload; in intel_pt_bip()
2093 switch (decoder->packet.type) { in intel_pt_walk_psbend()
2150 if (decoder->packet.count) { in intel_pt_walk_psbend()
2200 switch (decoder->packet.type) { in intel_pt_walk_fup_tip()
2238 if (decoder->packet.count == 0) { in intel_pt_walk_fup_tip()
2255 if (decoder->packet.count == 0) { in intel_pt_walk_fup_tip()
2268 if (decoder->packet.count == 0) { in intel_pt_walk_fup_tip()
2331 switch (pkt_info->packet.type) { in intel_pt_vm_psb_lookahead_cb()
2347 data->tma_packet = pkt_info->packet; in intel_pt_vm_psb_lookahead_cb()
2352 data->pip_packet = pkt_info->packet; in intel_pt_vm_psb_lookahead_cb()
2357 data->vmcs_packet = pkt_info->packet; in intel_pt_vm_psb_lookahead_cb()
2404 if (pkt_info->packet.type == INTEL_PT_CYC || in intel_pt_ovf_fup_lookahead_cb()
2405 pkt_info->packet.type == INTEL_PT_MTC || in intel_pt_ovf_fup_lookahead_cb()
2406 pkt_info->packet.type == INTEL_PT_TSC) in intel_pt_ovf_fup_lookahead_cb()
2408 data->found = pkt_info->packet.type == INTEL_PT_FUP; in intel_pt_ovf_fup_lookahead_cb()
2428 if (pkt_info->packet.type == INTEL_PT_CYC || in intel_pt_tma_lookahead_cb()
2429 pkt_info->packet.type == INTEL_PT_MTC) in intel_pt_tma_lookahead_cb()
2432 if (pkt_info->packet.type == INTEL_PT_TMA) { in intel_pt_tma_lookahead_cb()
2433 data->tma_packet = pkt_info->packet; in intel_pt_tma_lookahead_cb()
2502 uint64_t payload = decoder->packet.payload; in intel_pt_translate_vm_tsc()
2505 decoder->packet.payload -= vmcs_info->tsc_offset; in intel_pt_translate_vm_tsc()
2507 decoder->packet.payload &= SEVEN_BYTES; in intel_pt_translate_vm_tsc()
2514 memcpy((void *)decoder->buf + 1, &decoder->packet.payload, 7); in intel_pt_translate_vm_tsc()
2518 payload, decoder->packet.payload, vmcs_info->vmcs, in intel_pt_translate_vm_tsc()
2636 host_tsc = intel_pt_8b_tsc(decoder->packet.payload, ref_timestamp); in intel_pt_vm_tm_corr_tsc()
2751 uint64_t host_tsc = decoder->packet.payload; in intel_pt_vm_tm_corr_pebs_tsc()
2752 uint64_t guest_tsc = decoder->packet.payload; in intel_pt_vm_tm_corr_pebs_tsc()
2795 decoder->packet.payload = host_tsc; in intel_pt_vm_tm_corr_pebs_tsc()
2817 switch (decoder->packet.type) { in intel_pt_vm_time_correlation()
2855 decoder->pip_payload = decoder->packet.payload; in intel_pt_vm_time_correlation()
2887 if (decoder->packet.payload != NO_VMCS) in intel_pt_vm_time_correlation()
2888 decoder->vmcs = decoder->packet.payload; in intel_pt_vm_time_correlation()
2892 decoder->blk_type = decoder->packet.payload; in intel_pt_vm_time_correlation()
2897 decoder->packet.count == 2) in intel_pt_vm_time_correlation()
2942 if (decoder->leap && !decoder->in_psb && decoder->packet.type != INTEL_PT_PSB) { in intel_pt_hop_trace()
2948 switch (decoder->packet.type) { in intel_pt_hop_trace()
2954 if (!decoder->packet.count) { in intel_pt_hop_trace()
2966 if (!decoder->packet.count) { in intel_pt_hop_trace()
2979 if (!decoder->packet.count) in intel_pt_hop_trace()
3065 switch (pkt_info->packet.type) { in intel_pt_psb_lookahead_cb()
3087 if (data->fup || pkt_info->packet.count == 0) in intel_pt_psb_lookahead_cb()
3089 data->fup_packet = pkt_info->packet; in intel_pt_psb_lookahead_cb()
3190 decoder->packet = data.fup_packet; in intel_pt_psb_with_fup()
3214 last_packet_type = decoder->packet.type; in intel_pt_walk_trace()
3230 switch (decoder->packet.type) { in intel_pt_walk_trace()
3232 if (!decoder->packet.count) in intel_pt_walk_trace()
3234 decoder->tnt = decoder->packet; in intel_pt_walk_trace()
3242 if (decoder->packet.count != 0) in intel_pt_walk_trace()
3252 if (decoder->packet.count == 0) { in intel_pt_walk_trace()
3275 if (decoder->packet.count != 0) in intel_pt_walk_trace()
3281 if (decoder->packet.count == 0) { in intel_pt_walk_trace()
3376 if (decoder->packet.type == INTEL_PT_FUP) { in intel_pt_walk_trace()
3403 decoder->fup_ptw_payload = decoder->packet.payload; in intel_pt_walk_trace()
3407 if (decoder->packet.type == INTEL_PT_FUP) { in intel_pt_walk_trace()
3420 decoder->state.ptw_payload = decoder->packet.payload; in intel_pt_walk_trace()
3424 decoder->fup_mwait_payload = decoder->packet.payload; in intel_pt_walk_trace()
3431 decoder->packet.payload; in intel_pt_walk_trace()
3438 decoder->state.pwrx_payload = decoder->packet.payload; in intel_pt_walk_trace()
3445 if (decoder->packet.type == INTEL_PT_FUP) { in intel_pt_walk_trace()
3464 decoder->state.pwrx_payload = decoder->packet.payload; in intel_pt_walk_trace()
3485 if (decoder->packet.type == INTEL_PT_FUP) { in intel_pt_walk_trace()
3495 decoder->fup_cfe_pkt = decoder->packet; in intel_pt_walk_trace()
3504 decoder->fup_cfe_pkt = decoder->packet; in intel_pt_walk_trace()
3508 if (decoder->packet.type == INTEL_PT_FUP) { in intel_pt_walk_trace()
3531 return decoder->packet.count && in intel_pt_have_ip()
3532 (decoder->have_last_ip || decoder->packet.count == 3 || in intel_pt_have_ip()
3533 decoder->packet.count == 6); in intel_pt_have_ip()
3548 switch (decoder->packet.type) { in intel_pt_walk_psb()
3668 switch (decoder->packet.type) { in intel_pt_walk_to_ip()
4178 struct intel_pt_pkt packet; in intel_pt_next_tsc() local
4182 ret = intel_pt_get_packet(buf, len, &packet, &ctx); in intel_pt_next_tsc()
4185 if (packet.type == INTEL_PT_TSC) { in intel_pt_next_tsc()
4186 *tsc = packet.payload; in intel_pt_next_tsc()
4190 if (packet.type == INTEL_PT_PSBEND) in intel_pt_next_tsc()