review for 7150390: JFR test crashed on assert(_jni_lock_count == count) failed: must be equal
tom.rodriguez at oracle.com
Tue Mar 6 16:24:54 PST 2012
Thanks Coleen and Vladimir. Yumin and David also reviewed this.
On Mar 6, 2012, at 12:16 PM, Coleen Phillimore wrote:
> This looks good.
> On 3/6/2012 1:17 PM, Tom Rodriguez wrote:
>> 33 lines changed: 28 ins; 4 del; 1 mod; 7748 unchg
>> 7150390: JFR test crashed on assert(_jni_lock_count == count) failed: must be equal
>> Threads which have been suspended weren't being visited by the logic
>> for maintaining the shared JNI critical count, resuling in incorrect
>> values. It's a very rare problem that could only occur as a result of
>> JVMTI suspending a thread in the middle of a JNI critical operation
>> which should in general be rare. It showed up in the nightlies with
>> regularity but I was unable to reproduce the original problem. Adding
>> the new visited flag identified the issue immediately. Tested with
>> tests from nightlies and the nsk JVMTI related tests.
More information about the hotspot-dev