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

Coleen Phillimore coleenp at openjdk.org
Tue Dec 13 00:53:31 UTC 2022


On Fri, 9 Dec 2022 12:27:42 GMT, Coleen Phillimore <coleenp 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.

This pull request has now been integrated.

Changeset: d4531903
Author:    Coleen Phillimore <coleenp at openjdk.org>
URL:       https://git.openjdk.org/jdk20/commit/d4531903007dbe8dcdd163e423d23e8cefba61c8
Stats:     89 lines in 3 files changed: 14 ins; 50 del; 25 mod

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

Reviewed-by: kbarrett, eosterlund, sspitsyn, dcubed

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

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


More information about the hotspot-dev mailing list