]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MINOR: fd: used the update list from the fd's group instead of tgid
authorWilly Tarreau <w@1wt.eu>
Mon, 27 Feb 2023 17:35:39 +0000 (18:35 +0100)
committerWilly Tarreau <w@1wt.eu>
Mon, 27 Feb 2023 18:26:41 +0000 (19:26 +0100)
commitc0f6f5755bb0b15ffc614f36e6bc704bcf39b68f
treefb7bd61857de53bd8a015028303709824522a39c
parentb7056223364d6bbfe6526f7fb8ff85783dee04a1
BUG/MINOR: fd: used the update list from the fd's group instead of tgid

In _fd_delete_orphan() we try to remove the FD from its update list
which is supposed to be the current thread group's. However the function
might be called from another group during stopping or under isolation,
so FD is not queued in the current group's update list but in its own
group's list. Let's retrieve the group from the FD instead of using
tgid.

This should have no impact on existing code since there is no code path
calling fd_delete() under thread isolation for now, and other cases are
blocked in fd_delete().

This must be backported to 2.7.
src/fd.c