]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: quic: replace custom buf on Tx by default struct buffer
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 4 Aug 2022 14:19:57 +0000 (16:19 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Tue, 9 Aug 2022 13:45:47 +0000 (15:45 +0200)
commitf2476053f9304709dea595db413537023dba2d0e
tree860d584ca6507f7fe2106b0a96c92f5d6a49f98e
parent56c6154dba95c74659f0b2d72073e80d63b92c4b
MINOR: quic: replace custom buf on Tx by default struct buffer

On first prototype version of QUIC, emission was multithreaded. To
support this, a custom thread-safe ring-buffer has been implemented with
qring/cbuf.

Now the thread model has been adjusted : a quic-conn is always used on
the same thread and emission is not multi-threaded. Thus, qring/cbuf
usage can be replace by a standard struct buffer.

The code has been simplified even more as for now buffer is always
drained after a prepare/send invocation. This is the case since a
datagram is always considered as sent even on sendto() error. BUG_ON
statements guard are here to ensure that this model is always valid.
Thus, code to handle data wrapping and consume too small contiguous
space with a 0-length datagram is removed.
include/haproxy/xprt_quic-t.h
src/xprt_quic.c