RFR (S): 8131734: Add free_archive_regions support to G1 for -Xshared:auto
Tom Benson
tom.benson at oracle.com
Tue Aug 11 17:43:12 UTC 2015
Hi,
On 8/7/2015 10:56 AM, Tom Benson wrote:
>
> The problem is simply that in addition to calling
> free_archive_regions, FileMapInfo::unmap_string_regions also unmaps
> the memory.... so there's a segv when GC tries to re-use it. Let's
> talk directly about the best way to handle it.
> Tom
After some discussion, I've changed the definition and name of
free_archive_regions. Now called dealloc_archive_regions, it uncommits
the specified regions, unmapping the memory, rather than adding them to
the free list. This means the CDS code will no longer do the unmapping
on verification failures.
Updated full and incremental webrevs of the GC code are at:
http://cr.openjdk.java.net/~tbenson/8131734/webrev.02/
http://cr.openjdk.java.net/~tbenson/8131734/webrev.02.vs.01/
Tested with JPRT and running benchmarks with the dealloc_ performed
explicitly. Jiangli also tested the original failing cases, and will be
posting an updated webrev.
Tom
On 8/7/2015 10:56 AM, Tom Benson wrote:
> Hi,
>
> On 8/7/2015 9:52 AM, Tom Benson wrote:
>> Hi,
>> On 8/6/2015 8:40 PM, Jiangli Zhou wrote:
>>> Hi Dmitry,
>>>
>>> I’ve added shared string unmapping to handle the string data
>>> verification failure. I also added 'free_archive_regions()’ call to
>>> FileMapInfo::unmap_string_regions(). My testing revealed some issues
>>> with the new archive region free code when I forced string
>>> verification failure. I’m working with Tom on the issues.
>>
>
> The problem is simply that in addition to calling
> free_archive_regions, FileMapInfo::unmap_string_regions also unmaps
> the memory.... so there's a segv when GC tries to re-use it. Let's
> talk directly about the best way to handle it.
> Tom
More information about the hotspot-gc-dev
mailing list