RFR: Heap region recycling should call explicit clear() and request zapping

Zhengyu Gu zgu at redhat.com
Thu Jun 1 13:22:04 UTC 2017


Yes. I was puzzled by Contiguous::initialize() in recycle method.

Thanks,

-Zhengyu



On 06/01/2017 05:57 AM, Aleksey Shipilev wrote:
> Hi,
>
> Recent observation by chf about resetting top() [1] prompted me to find where we
> actually do this. We apparently do that via CompactibleSpace::initialize ->
> Space::initialize -> CompactibleSpace::clear. It feels more straightforward to
> call that method explicitly.
>
> Plus, request zapping of region space -- it will be enabled with
> +ZapUnusedHeapArea, true in fastdebug, false in product. This should help to
> diagnose bugs with referencing dead objects in recycled regions.
>
> Fix:
>  http://cr.openjdk.java.net/~shade/shenandoah/shr-clear-zap/webrev.01/
>
> Checked -UseTLAB allocation pressure tests do not regress.
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
> Yes
> [1]
> http://cr.openjdk.java.net/~chf/heuristics/webrev.00/src/share/vm/gc/shenandoah/shenandoahHeapRegion.cpp.sdiff.html
>


More information about the shenandoah-dev mailing list