On Mon, 16 May 2022 08:49:40 GMT, Jaroslav Bachorik <jbacho...@openjdk.org> wrote:
>> A gist of the fix is to allow relaxed special handling of code blob lookup >> when done for ASGCT. >> >> Currently, a guarantee will fail when we happen to hit a zombie method which >> is still on stack. While this would indicate a serious error for the normal >> execution flow, in case of ASGCT being in progress when the executing thread >> can be expected at any possible method this is something which may happen >> and we really should not take the profiled JVM down due to it. >> >> <hr> >> Unfortunately, I am not able to create a simple reproducer for the crash >> other that testing in our production where the crash is happening >> sporadically. >> However, thanks to @parttimenerd and his [ASGCT stress >> test](https://github.com/parttimenerd/asgct2-tester.git) the problem can be >> reproduced quite reliably. >> >> <br><br> >> >> _Note: This is a followup PR for #8061_ > > Jaroslav Bachorik has refreshed the contents of this pull request, and > previous commits have been removed. The incremental views will show > differences compared to the previous content of the PR. The pull request > contains two new commits since the last revision: > > - Use RAII object to manage thread in_asgct status > - Avoid check overhead when possible Ok, I moved the expensive check only after it is sure we are dealing with a zombie method. Thanks for all the suggestions! This change now looks much more self-contained than I hoped for. ------------- PR: https://git.openjdk.java.net/jdk/pull/8549