Lines Matching refs:pending_pkt
39 struct gve_tx_pending_pkt_dqo *pending_pkt) in gve_unmap_packet() argument
41 bus_dmamap_sync(tx->dqo.buf_dmatag, pending_pkt->dmamap, in gve_unmap_packet()
43 bus_dmamap_unload(tx->dqo.buf_dmatag, pending_pkt->dmamap); in gve_unmap_packet()
47 gve_clear_qpl_pending_pkt(struct gve_tx_pending_pkt_dqo *pending_pkt) in gve_clear_qpl_pending_pkt() argument
49 pending_pkt->qpl_buf_head = -1; in gve_clear_qpl_pending_pkt()
50 pending_pkt->num_qpl_bufs = 0; in gve_clear_qpl_pending_pkt()
56 struct gve_tx_pending_pkt_dqo *pending_pkt; in gve_free_tx_mbufs_dqo() local
60 pending_pkt = &tx->dqo.pending_pkts[i]; in gve_free_tx_mbufs_dqo()
61 if (!pending_pkt->mbuf) in gve_free_tx_mbufs_dqo()
65 gve_clear_qpl_pending_pkt(pending_pkt); in gve_free_tx_mbufs_dqo()
67 gve_unmap_packet(tx, pending_pkt); in gve_free_tx_mbufs_dqo()
69 m_freem(pending_pkt->mbuf); in gve_free_tx_mbufs_dqo()
70 pending_pkt->mbuf = NULL; in gve_free_tx_mbufs_dqo()
509 struct gve_tx_pending_pkt_dqo *pending_pkt; in gve_alloc_pending_packet() local
524 pending_pkt = &tx->dqo.pending_pkts[index]; in gve_alloc_pending_packet()
527 tx->dqo.free_pending_pkts_csm = pending_pkt->next; in gve_alloc_pending_packet()
528 pending_pkt->state = GVE_PACKET_STATE_PENDING_DATA_COMPL; in gve_alloc_pending_packet()
530 gve_set_timestamp(&pending_pkt->enqueue_time_sec); in gve_alloc_pending_packet()
532 return (pending_pkt); in gve_alloc_pending_packet()
537 struct gve_tx_pending_pkt_dqo *pending_pkt) in gve_free_pending_packet() argument
539 int index = pending_pkt - tx->dqo.pending_pkts; in gve_free_pending_packet()
542 pending_pkt->state = GVE_PACKET_STATE_FREE; in gve_free_pending_packet()
544 gve_invalidate_timestamp(&pending_pkt->enqueue_time_sec); in gve_free_pending_packet()
550 pending_pkt->next = old_head; in gve_free_pending_packet()
914 struct gve_tx_pending_pkt_dqo *pending_pkt; in gve_handle_packet_completion() local
923 pending_pkt = &tx->dqo.pending_pkts[compl_tag]; in gve_handle_packet_completion()
926 if (__predict_false(pending_pkt->state != in gve_handle_packet_completion()
933 pkt_len = pending_pkt->mbuf->m_pkthdr.len; in gve_handle_packet_completion()
936 gve_reap_qpl_bufs_dqo(tx, pending_pkt); in gve_handle_packet_completion()
938 gve_unmap_packet(tx, pending_pkt); in gve_handle_packet_completion()
940 m_freem(pending_pkt->mbuf); in gve_handle_packet_completion()
941 pending_pkt->mbuf = NULL; in gve_handle_packet_completion()
942 gve_free_pending_packet(tx, pending_pkt); in gve_handle_packet_completion()
949 struct gve_tx_pending_pkt_dqo *pending_pkt; in gve_check_tx_timeout_dqo() local
955 pending_pkt = &tx->dqo.pending_pkts[pkt_idx]; in gve_check_tx_timeout_dqo()
957 if (!gve_timestamp_valid(&pending_pkt->enqueue_time_sec)) in gve_check_tx_timeout_dqo()
961 gve_seconds_since(&pending_pkt->enqueue_time_sec) > in gve_check_tx_timeout_dqo()