From: Frédéric Lécaille Date: Wed, 4 Aug 2021 13:27:37 +0000 (+0200) Subject: MINOR: quic: Add a pool for TX ring buffer internal buffer X-Git-Tag: v2.5-dev8~80 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dbe25afbe6c40d427ff66a74d3f1225e2db438f6;p=thirdparty%2Fhaproxy.git MINOR: quic: Add a pool for TX ring buffer internal buffer We want to allocate the internal buffer of TX ring buffer from a pool. This patch add "quic_tx_ring_pool" to do so. --- diff --git a/include/haproxy/xprt_quic-t.h b/include/haproxy/xprt_quic-t.h index 15b3bb87f2..1e19c38f61 100644 --- a/include/haproxy/xprt_quic-t.h +++ b/include/haproxy/xprt_quic-t.h @@ -225,7 +225,11 @@ enum quic_pkt_type { (void) (&_a == &_b); \ _a > _b ? _a : _b; }) +/* Size of the internal buffer of QUIC TX ring buffers (must be a power of 2) */ +#define QUIC_TX_RING_BUFSZ (1UL << 12) + extern struct trace_source trace_quic; +extern struct pool_head *pool_head_quic_tx_ring; extern struct pool_head *pool_head_quic_rx_packet; extern struct pool_head *pool_head_quic_tx_packet; extern struct pool_head *pool_head_quic_frame; diff --git a/src/xprt_quic.c b/src/xprt_quic.c index ddffd10de1..cfd8a68770 100644 --- a/src/xprt_quic.c +++ b/src/xprt_quic.c @@ -130,6 +130,7 @@ INITCALL1(STG_REGISTER, trace_register_source, TRACE_SOURCE); static BIO_METHOD *ha_quic_meth; +DECLARE_POOL(pool_head_quic_tx_ring, "quic_tx_ring_pool", QUIC_TX_RING_BUFSZ); DECLARE_STATIC_POOL(pool_head_quic_conn_ctx, "quic_conn_ctx_pool", sizeof(struct ssl_sock_ctx)); DECLARE_STATIC_POOL(pool_head_quic_conn, "quic_conn", sizeof(struct quic_conn));