Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6307266
Votes 0
Synopsis JIT compilation in mixed mode may break synchronization
Category hotspot:compiler1
Reported Against
Release Fixed mustang(b49), 1.4.2_18(b05) (Bug ID:2148043) , 5.0u16-rev(b10) (Bug ID:2157829) , 1.4.2_17-rev(b10) (Bug ID:2160985) , 5.0u17(b03) (Bug ID:2168675)
State 10-Fix Delivered, Verified, bug
Priority: 2-High
Related Bugs
Submit Date 05-AUG-2005
Description
Attached test works ok until internal loop is interpreted.
However, after it is executed number of times normally and
compiled by JIT it fails with 'java.lang.IllegalMonitorStateException' exception.

This problem is reproducible with both 1.5 and recent mustang builds.
It is not reproducible on Solaris x86 and linux x86.
Posted Date : 2005-08-05 20:38:30.0
Work Around
N/A
Evaluation
This is a bug in the order in which monitors are copied from the interpreter frame to the compiled frame.  Strictly speaking this was broken in original sparc port of client but only in 1.4.1 did it become visible because we switched to using BasicObjectLocks so we stopped examining unlocked object, relying instead of the BasicObjectLock pointing to the correct object.  The fix is simply to reverse order of transfering locks from the interpeter frame.
Posted Date : 2005-08-08 22:30:59.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang