On Thu, 2 Feb 2023 15:52:01 GMT, Justin King <[email protected]> wrote:
>> 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 two additional > commits since the last revision: > > - Fix grammatical error > > Signed-off-by: Justin King <[email protected]> > - Update based on review and remove restriction on compressed oops and class > pointers > > Signed-off-by: Justin King <[email protected]> Updates look good - glad to see the flag changes go away! I suggest factoring out the change to `test/jdk/jni/nullCaller/exeNullCallerTest.cpp` as it is a JDK test and not part of hotspot. Thanks. ------------- PR: https://git.openjdk.org/jdk/pull/12229
