[15]RFR: 8238356: CodeHeap::blob_count() overestimates the number of blobs
Tobias Hartmann
tobias.hartmann at oracle.com
Mon Feb 17 09:13:15 UTC 2020
Hi Rahul,
looks good to me. Please update the affected versions in the bug.
Thanks,
Tobias
On 17.02.20 09:12, Rahul Raghavan wrote:
> Hi,
>
> Please review the following fix changeset.
>
> <webrev> - http://cr.openjdk.java.net/~rraghavan/8238356/webrev.00/
> <JBS> - https://bugs.openjdk.java.net/browse/JDK-8238356
>
> Issue reported - CodeHeap::blob_count() can miscalculate the blob count.
> CodeHeap::_blob_count is only incremented, never decremented.
>
> Webrev fix proposal, same as suggested by Aleksey Shipilev,
> is to decrement _blob_count on addition to the free list.
>
> [src/hotspot/share/memory/heap.cpp]
> void CodeHeap::add_to_freelist(HeapBlock* a) {
> FreeBlock* b = (FreeBlock*)a;
> size_t bseg = segment_for(b);
> _freelist_length++;
>
> + _blob_count--;
> + assert(_blob_count >= 0, "sanity");
> +
> assert(b != _freelist, "cannot be removed twice");
>
> Found no issues with precheckin, tier1 - tier5 testing.
>
>
> Thanks,
> Rahul
More information about the hotspot-compiler-dev
mailing list