]> git.ipfire.org Git - thirdparty/wireguard-go.git/commit
device: remove QueueInboundElement leak with stopped peers
authorJosh Bleecher Snyder <josh@tailscale.com>
Tue, 22 Dec 2020 17:52:53 +0000 (09:52 -0800)
committerJason A. Donenfeld <Jason@zx2c4.com>
Thu, 7 Jan 2021 13:49:44 +0000 (14:49 +0100)
commitb5f966ac2439df9eba182886406f6381934948ad
treeae7d66bd598057b2ea1d68b9ecbf21e1009ff121
parenta1c265b0c5bea2c1c4a62acac0045fe93cd691cd
device: remove QueueInboundElement leak with stopped peers

This is particularly problematic on mobile,
where there is a fixed number of elements.
If most of them leak, it'll impact performance;
if all of them leak, the device will permanently deadlock.

I have a test that detects element leaks, which is how I found this one.
There are some remaining leaks that I have not yet tracked down,
but this is the most prominent by far.

I will commit the test when it passes reliably.

Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com>
device/receive.go