[9] RFR(XS): 8042570: Excessive number of tests timing out on nightly testing due to fix for 8040798

Daniel D. Daugherty daniel.daugherty at oracle.com
Wed May 7 13:46:24 UTC 2014


 > http://cr.openjdk.java.net/~anoll/8042570/webrev.00/

src/share/vm/compiler/compileBroker.cpp
     No comments.

Thumbs up!

Dan


On 5/7/14 5:34 AM, Albert wrote:
> Hi,
>
> could I get reviews for this patch?
>
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8042570
>
> Problem:
> The fix of JDK-8040798 introduced a lock (MethodCompileQueue_lock) 
> prior to accessing the compilation queues
> of C1 and C2 in CompileBroker::mark_on_stack(). 
> CompileBroker::mark_on_stack() is executed at a safepoint.
> The locks that I introduced can cause the deadlock, since the 
> MethodCompileQueue_lock lock is held at a safepoint
> that is reached from ciEnv::register_method(). This causes the deadlock.
>
> I verified that deadlock happens as described above using the 
> Redefine_v52_strict_invoke_redefine test.
>
> Solution:
> Remove locks in CompileBroker::mark_on_stack().
>
> Testing:
> Failing test cases.
>
> webrev:
> http://cr.openjdk.java.net/~anoll/8042570/webrev.00/
>
> Many thanks in advance and sorry having introduced this bug,
> Albert



More information about the hotspot-dev mailing list