On Thu, 30 Oct 2025 02:20:47 GMT, Leonid Mesnik <[email protected]> wrote:

>> The field access/modification events set interp only mode and compiled frame 
>> is not expected. However JNI might call `post_field_access_by_jni` while the 
>> last java frame is compiled. 
>> 
>> 1) The thread switched to interponly mode while it is in JNI code. The 
>> deoptimization is triggered but each frame is really changed only execution 
>> returns to it.  So last java frame was not executed and thus is still 
>> compiled. 
>> 2) The JNI accessed field from the thread where field events are not 
>> enabled. So the `post_field_access_by_jni` is called in threads in 
>> interp_only mode. 
>> 
>> The original example doesn't reproduce issue because of JDK changes and I 
>> don't know of it is 1) or 2)I. I implemented regression test for both 
>> problems. 
>> 
>> The location should be zero for JNI access.
>
> Leonid Mesnik has updated the pull request incrementally with two additional 
> commits since the last revision:
> 
>  - fixed string
>  - fixed after feedback from Alex

Marked as reviewed by amenkov (Reviewer).

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

PR Review: https://git.openjdk.org/jdk/pull/27584#pullrequestreview-3401156623

Reply via email to