RFR: shenandoah_barrier_stubs size is not enough to fit the stubs

Roman Kennke rkennke at redhat.com
Thu Jun 14 18:08:18 UTC 2018


Very weird. It was enough on my machine. Please push it.

Thanks,
Roman

> Fails with:
> 
> STDOUT:
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> #  Internal Error (codeBuffer.cpp:1007), pid=40010, tid=40012
> #  guarantee(sect->end() <= tend) failed: sanity
> #
> 
> 
> Fix:
> 
> diff -r a35cb74d08cb src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp
> --- a/src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp	Thu Jun 14 18:37:15
> 2018 +0200
> +++ b/src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp	Thu Jun 14 19:16:01
> 2018 +0200
> @@ -948,7 +948,7 @@
> 
>  void ShenandoahBarrierSetAssembler::barrier_stubs_init() {
>    if (ShenandoahWriteBarrier || ShenandoahStoreValEnqueueBarrier) {
> -    int stub_code_size = 1536;
> +    int stub_code_size = 4096;
>      ResourceMark rm;
>      BufferBlob* bb = BufferBlob::create("shenandoah_barrier_stubs", stub_code_size);
>      CodeBuffer buf(bb);
> 
> 
> Testing: x86_64 {fastdebug|release}, aarch64 {fastdebug|release} tier1_gc_shenandoah
> 
> Thanks,
> -Aleksey
> 




More information about the shenandoah-dev mailing list