> Adds initial LSan (LeakSanitizer) support to Hotspot. This setup has been > used to identify multiple leaks so far. It can run most of the test suite > except those that also fail with ASan, which is being looked at separately. > It is especially useful when combined with ASan, as LSan can use poisoning > information to determine what memory to scan or not to scan, making leak > detection more accurate and faster. > > **Suppressing:** > Currently the suppression list is only used to suppress JLI leaks that are > known, the rest are done in code. Suppressing needs to identify the source of > thet leak. Due to Hotspot's code organization, we would need to suppress > `os::malloc` and friends, which would suppress everything. Suppressing in > code has the added benefit of being explicit and surviving refactors if > methods change. > > **Caveats:** > - By default ASan enables LSan, however we explicitly disable it unless > `--enable-lsan` is given. It is useful to be able to use ASan without LSan. > Using LSan by itself is less likely to be useful and will probably not work, > but its still possible currently.
Justin King has updated the pull request incrementally with one additional commit since the last revision: Update based on review Signed-off-by: Justin King <jck...@google.com> ------------- Changes: - all: https://git.openjdk.org/jdk/pull/12229/files - new: https://git.openjdk.org/jdk/pull/12229/files/f3d054b5..55b8381a Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=12229&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=12229&range=03-04 Stats: 7 lines in 1 file changed: 4 ins; 2 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/12229.diff Fetch: git fetch https://git.openjdk.org/jdk pull/12229/head:pull/12229 PR: https://git.openjdk.org/jdk/pull/12229