Repository navigation
connectd: free individual listeners on shutdown - #64
Merged
Merged
Conversation
In start_shutdown(), freeing daemon->listeners only freed the tal
array of pointers, but not the struct io_listener objects themselves
since they are parented to daemon. This left the listening sockets open
and caused them to be flagged as memory leaks during leak detection:
**BROKEN** connectd: MEMLEAK: 0x55b7288579f8
**BROKEN** connectd: label=ccan/ccan/io/io.c:25:struct io_listener
**BROKEN** connectd: alloc:
**BROKEN** connectd: ccan/ccan/io/io.c:25 (io_new_listener_)
**BROKEN** connectd: connectd/connectd.c:1818 (connect_activate)
**BROKEN** connectd: connectd/connectd.c:2357 (recv_req)
**BROKEN** connectd: parents:
**BROKEN** connectd: connectd/connectd.c:2519:struct daemon
Explicitly tal_free each listener in daemon->listeners before freeing the
array.
Changelog-None
(cherry picked from commit 862c46b)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Backports the upstream fix that frees each connectd listener in
start_shutdown(), not just the array holding them. Without it the listening sockets stay open during shutdown and the memleak check can flag them, which failedtest_funding_cancel_raceunder ASan on #63.Changelog-None