Skip to content

Remove sanitizer suppression issued by TrafficParticipantModel example

Description

Currently we are facing memory leaks reported by leak sanitizer.

With MR !128 (merged) the suppression of this issue was introduced.

Analysis Result

Due to the used symbol versioning for the TrafficParticipantModel example all osi related symbols and protobuf related symbols are set to local scope. While destructing tpm example (which got loaded via dlopen) leak sanitizer reports direct and indirect memory leaks. In case these symbols are set to global scope then we no longer get a report about leaking memory. Further analysis by narrowing the exposed symbols pointed out that google protobuf causes the memory leak in case shared library gets "unloaded". I.e. this is a false-positive.

Proposed Fix

Force protobuf to release/free all global resources.

Alternative Solution

Integrate open simulation interface + protobuf as shared library (instead of linking it in a static way).

Pipeline https://ci.eclipse.org/openpass/job/GtGenCore/view/change-requests/job/MR-151/ image

Edited by Mathias Kellerer

Merge request reports

Loading