mirror of
https://github.com/haproxy/haproxy.git
synced 2026-03-22 18:33:28 -04:00
MINOR: quic: ensure quic_conn is never removed on thread affinity rebind
On accept, quic_conn instance is migrated from its original thread to a new one. This operation is conducted in two steps, on the original than the new thread instance. During the interval, quic_conn is artificially rendered inactive. It must never be accessed nor removed until migration is completed via qc_finalize_affinity_rebind(). This new BUG_ON() will enforce that removal is never conducted until migration is completed.
This commit is contained in:
parent
a4240fb26f
commit
bfdf145859
1 changed files with 3 additions and 0 deletions
|
|
@ -1314,6 +1314,9 @@ void quic_conn_release(struct quic_conn *qc)
|
|||
if (!qc)
|
||||
goto leave;
|
||||
|
||||
/* Must not delete a quic_conn if thread affinity rebind in progress. */
|
||||
BUG_ON(qc->flags & QUIC_FL_CONN_AFFINITY_CHANGED);
|
||||
|
||||
/* We must not free the quic-conn if the MUX is still allocated. */
|
||||
BUG_ON(qc->mux_state == QC_MUX_READY);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue