|
Bugzilla – Full Text Bug Listing |
| Summary: | BlockAckManager does not remove iterators to freed items | ||
|---|---|---|---|
| Product: | ns-3 | Reporter: | Alexander Krotov <krotov> |
| Component: | wifi | Assignee: | sebastien.deronne |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | ns-bugs, tomh |
| Priority: | P3 | ||
| Version: | ns-3.25 | ||
| Hardware: | All | ||
| OS: | All | ||
| Attachments: | Proposed patch | ||
I was expecting that BlockAckManager::RemovePacket was doing the job. Could you attach your test case or traces showing that packets are not always removed? Maybe the problem is that we do not properly call BlockAckManager::RemovePacket at some places. Could you please clarify a bit this bug? For me it is not clear whether something is wrong or not. Still no feedback received. I'll reject this bug unless I get a reply before the upcoming release. Waiting example from Ioannis Still test case needed... In the meantime, I will test the proposed patch to check whether this hurts anything, or whether this indeed adds some protection somehow. I made some tests with this patch and I do not see any problem. Since I do not have any further objection to this patch which seems fixing an issue for Alexander, I propose to deliver it to the mainstream. (In reply to sebastien.deronne from comment #6) > I made some tests with this patch and I do not see any problem. Since I do > not have any further objection to this patch which seems fixing an issue for > Alexander, I propose to deliver it to the mainstream. +1; sometimes bugs like these are hard to reproduce with a mainline code test pushed in changeset 12707:d4c60d43eb4e |
Created attachment 2374 [details] Proposed patch When packets are acknowledged, retransmissions are not removed. In most cases they don't exist at all or are removed later by BlockAckManager::CleanupBuffers, but it means CleanupBuffers accessed memory of already deleted packets. Valgrind reports use-after-free in some of my experiments and sometimes they crash because of this. Attached is a patch to fix this problem by removing retransmissions for all acknowledged packets.