[jdk20] RFR: 8296955: Kitchensink.java failed with "double free or corruption (!prev): <addr>"

Daniel D. Daugherty dcubed at openjdk.org
Mon Dec 12 21:46:49 UTC 2022


On Sat, 10 Dec 2022 16:31:57 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:

>> Thanks to Kim for the diagnosis of this problem.  G1 cleans up nmethods in parallel threads during a safepoint and may post or queue unload events to be posted.  The event posting creates jmethodIDs.  The jmethodID code assumes that it's thread safe in a safepoint, which it is not.
>> I removed this optimization, which isn't much of an optimization (did run some sanity performance tests) and is unsafe in the modern code.
>> Tested with tier1-7, where tier5 found the original bug.
>
> Looks good.

@kimbarrett , @fisk, @sspitsyn and @coleenp - It is nice to see so many
reviewers on a post-code fork fix!

-------------

PR: https://git.openjdk.org/jdk20/pull/10


More information about the hotspot-dev mailing list