RFR(XS) 8224115: Shenandoah: Eliminate RWLock that protects recorded nmethod data array

Zhengyu Gu zgu at redhat.com
Thu May 23 13:24:28 UTC 2019



On 5/23/19 6:40 AM, Aleksey Shipilev wrote:
> On 5/20/19 1:26 PM, Zhengyu Gu wrote:
>> Split the original patch, moved root processing changes that deal with traversal GC problem into
>> JDK-8224179.
>>
>> Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8224115/webrev.01/
> 
> Looks fine, except:
> 
> What is this removal? It does not seem related:
> 
>   248 ShenandoahAllCodeRootsIterator ShenandoahCodeRoots::iterator() {
>   249   return ShenandoahAllCodeRootsIterator();
>   250 }
>   251
>   252 ShenandoahCsetCodeRootsIterator ShenandoahCodeRoots::cset_iterator() {
>   253   return ShenandoahCsetCodeRootsIterator();
>   254 }

Can make separate patch. Both methods seem to depend on inline behavior 
to avoid fatal error, where they may free 
ShenandoahParallelCodeHeapIterator inside 
ShenandoahParallelCodeCacheIterator twice due to copy constructors.

Thanks,

-Zhengyu

> 
> -Aleksey
> 


More information about the shenandoah-dev mailing list