haproxy public development tree
Go to file
Amaury Denoyelle d6646dddcc MINOR: quic: finalize affinity change as soon as possible
During accept, a quic-conn is rebind to a new thread. This process is
done in two times :
* first on the original thread via qc_set_tid_affinity()
* then on the newly assigned thread via qc_finalize_affinity_rebind()

Most quic_conn operations (I/O tasklet, task and quic_conn FD socket
read) are reactivated ony after the second step. However, there is a
possibility that datagrams are handled before it via quic_dgram_parse()
when using listener sockets. This does not seem to cause any issue but
this may cause unexpected behavior in the future.

To simplify this, qc_finalize_affinity_rebind() will be called both by
qc_xprt_start() and quic_dgram_parse(). Only one invocation will be
performed thanks to the new flag QUIC_FL_CONN_AFFINITY_CHANGED.

This should be backported up to 2.7.
2023-04-26 17:50:16 +02:00
.github CI: extend spellchecker whitelist, add "clen" as well 2023-04-23 09:44:53 +02:00
addons CLEANUP: opentracing: remove the last two occurrences of strncat() 2023-04-07 18:14:28 +02:00
admin MINOR: acme.sh: add the deploy script for acme.sh in admin directory 2023-04-26 17:32:15 +02:00
dev DEV: h2: support reading frame payload from a file 2023-04-26 11:36:02 +02:00
doc [RELEASE] Released version 2.8-dev8 2023-04-23 10:21:37 +02:00
examples EXAMPLES: add basic event_hdl lua example script 2023-04-05 09:02:14 +02:00
include MINOR: quic: finalize affinity change as soon as possible 2023-04-26 17:50:16 +02:00
reg-tests REGTESTS: remove unsupported "stats bind-process" keyword 2023-04-23 09:44:53 +02:00
scripts SCRIPTS: run-regtests: add a version check 2022-11-30 18:44:33 +01:00
src MINOR: quic: finalize affinity change as soon as possible 2023-04-26 17:50:16 +02:00
tests TESTS: add a unit test for one_among_mask() 2022-06-21 20:29:57 +02:00
.cirrus.yml CI: cirrus-ci: bump FreeBSD image to 13-1 2023-04-23 09:44:53 +02:00
.gitattributes
.gitignore CLEANUP: exclude udp-perturb with .gitignore 2022-09-16 15:47:04 +02:00
.mailmap
.travis.yml
BRANCHES
CHANGELOG [RELEASE] Released version 2.8-dev8 2023-04-23 10:21:37 +02:00
CONTRIBUTING
INSTALL MINOR: version: mention that it's development again 2022-12-01 15:24:10 +01:00
LICENSE
MAINTAINERS CLEANUP: assorted typo fixes in the code and comments 2022-11-30 14:02:36 +01:00
Makefile MINOR: quic: Add a fake congestion control algorithm named "nocc" 2023-03-31 17:09:03 +02:00
README
SUBVERS
VERDATE [RELEASE] Released version 2.8-dev8 2023-04-23 10:21:37 +02:00
VERSION [RELEASE] Released version 2.8-dev8 2023-04-23 10:21:37 +02:00

README

The HAProxy documentation has been split into a number of different files for
ease of use.

Please refer to the following files depending on what you're looking for :

  - INSTALL for instructions on how to build and install HAProxy
  - BRANCHES to understand the project's life cycle and what version to use
  - LICENSE for the project's license
  - CONTRIBUTING for the process to follow to submit contributions

The more detailed documentation is located into the doc/ directory :

  - doc/intro.txt for a quick introduction on HAProxy
  - doc/configuration.txt for the configuration's reference manual
  - doc/lua.txt for the Lua's reference manual
  - doc/SPOE.txt for how to use the SPOE engine
  - doc/network-namespaces.txt for how to use network namespaces under Linux
  - doc/management.txt for the management guide
  - doc/regression-testing.txt for how to use the regression testing suite
  - doc/peers.txt for the peers protocol reference
  - doc/coding-style.txt for how to adopt HAProxy's coding style
  - doc/internals for developer-specific documentation (not all up to date)