BUG/MINOR: mux-spop: always clear MUX_MFULL and DEM_MROOM when clearing the mbuf

That's the equivalent of the mux-h2 one, except that here there's no
real risk to loop since normally we cannot feed data that bypass the
closed state check (e.g. no zero-copy forward). But it still remains
dirty to be able to leave and empty mbuf with MFULL and MROOM set, so
better clear them as well.

No backport is needed since this is only in 3.1.
This commit is contained in:
Willy Tarreau 2024-09-02 19:54:09 +02:00
parent 830e50561c
commit f8bff3b531
1 changed files with 3 additions and 0 deletions

View File

@ -513,6 +513,9 @@ static inline void spop_release_mbuf(struct spop_conn *spop_conn)
b_free(buf);
count++;
}
spop_conn->flags &= ~(SPOP_CF_MUX_MFULL | SPOP_CF_DEM_MROOM);
if (count)
offer_buffers(NULL, count);
}