RFR: 8159890: SIGSEGV with UseStringDeduplication and UseSharedSpaces/RequireSharedSpaces
Ioi Lam
ioi.lam at oracle.com
Wed Jun 22 16:20:45 UTC 2016
On 6/22/16 9:11 AM, Thomas Schatzl wrote:
> Hi,
>
> On Wed, 2016-06-22 at 16:49 +0200, Per Liden wrote:
>> Hi,
>>
>> Summary: This was bug was introduced by JDK-8150607 - Clean up
>> CompactHashtable, where the rewrite of CompactHashtable::oops_do()
>> by
>> mistake now iterates over entry[0] instead of entry[1] for regular
>> bucket types. This causes garbage (non-narrowOop) values to be passed
>> to
>> the OopClosure passed to oops_do() and we crash. The bug is easy to
>> reproduce with:
>>
>> $ java -Xshare:dump
>> $ java -XX:+UseSharedSpaces -XX:+UseStringDeduplication -version
>>
>> Webrev: http://cr.openjdk.java.net/~pliden/8159890/webrev.0/
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8159890
Hi Per,
Thanks for finding the bug. Sorry I checked code in without realizing
that it needed a test case :-(
> looks good. Not really sure if this needs a regression test. It seems
> to be too trivial and obvious a fix.
I wrote one anyway :-) I think it's good to have some minimal coverage
in the test suite to cover future issues.
http://cr.openjdk.java.net/~iklam/jdk9/8159890_cds_strdedup.v02/SharedStringsDedup.java
It's a slight modification of
hotspot/test/runtime/SharedArchiveFile/SharedStringsRunAuto.java
Thanks
- Ioi
> Thanks,
> Thomas
More information about the hotspot-runtime-dev
mailing list