MINOR: quic: Add traces about TX frame memory releasing

Add such traces in qc_treat_acked_tx_frm(). This should be helpful to track memory
leak issues for TX frames.
This commit is contained in:
Frédéric Lécaille 2022-04-21 18:10:41 +02:00 committed by Amaury Denoyelle
parent b44cbc68a6
commit e87b3ee9f5

View File

@ -1484,6 +1484,7 @@ static inline void qc_treat_acked_tx_frm(struct quic_conn *qc,
struct quic_frame *frm)
{
int stream_acked;
uint64_t pn;
TRACE_PROTO("Removing frame", QUIC_EV_CONN_PRSAFRM, qc, frm);
stream_acked = 0;
@ -1507,7 +1508,10 @@ static inline void qc_treat_acked_tx_frm(struct quic_conn *qc,
if (!node) {
TRACE_PROTO("acked stream for released stream", QUIC_EV_CONN_ACKSTRM, qc, strm_frm);
LIST_DELETE(&frm->list);
pn = frm->pkt->pn_node.key;
quic_tx_packet_refdec(frm->pkt);
TRACE_PROTO("freeing frame from packet",
QUIC_EV_CONN_PRSAFRM, qc, frm, &pn);
pool_free(pool_head_quic_frame, frm);
/* early return */
@ -1527,13 +1531,19 @@ static inline void qc_treat_acked_tx_frm(struct quic_conn *qc,
/* no need to continue if stream freed. */
TRACE_PROTO("stream released and freed", QUIC_EV_CONN_ACKSTRM, qc);
LIST_DELETE(&frm->list);
pn = frm->pkt->pn_node.key;
quic_tx_packet_refdec(frm->pkt);
TRACE_PROTO("freeing frame from packet",
QUIC_EV_CONN_PRSAFRM, qc, frm, &pn);
pool_free(pool_head_quic_frame, frm);
break;
}
LIST_DELETE(&frm->list);
pn = frm->pkt->pn_node.key;
quic_tx_packet_refdec(frm->pkt);
TRACE_PROTO("freeing frame from packet",
QUIC_EV_CONN_PRSAFRM, qc, frm, &pn);
pool_free(pool_head_quic_frame, frm);
}
else {
@ -1545,7 +1555,10 @@ static inline void qc_treat_acked_tx_frm(struct quic_conn *qc,
break;
default:
LIST_DELETE(&frm->list);
pn = frm->pkt->pn_node.key;
quic_tx_packet_refdec(frm->pkt);
TRACE_PROTO("freeing frame from packet",
QUIC_EV_CONN_PRSAFRM, qc, frm, &pn);
pool_free(pool_head_quic_frame, frm);
}