RFR:[jdk11]:JDK-8213574: Deadlock in string table expansion when dumping lots of CDS classes
Jiangli Zhou
jianglizhou at google.com
Mon May 18 21:31:08 UTC 2020
Please review the backport for JDK-8213574 to JDK 11:
backport webrev:
http://cr.openjdk.java.net/~jiangli/8213574-jdk11-backport/webrev.00/
https://bugs.openjdk.java.net/browse/JDK-8213574
Original webrev: http://hg.openjdk.java.net/jdk/jdk/rev/d5eebe1e03fe
CDS dumping may run into a deadlock situation during copying the
interned j.l.String objects in the VM thread, while the service thread
is concurrently expanding the string table. I ran into the deadlock
recently when creating a CDS archive with an input classlist of ~60K
classes on JDK 11. The backport addresses the deadlock issue.
The diffs in symbolTable.cpp are not included in the backport as they
only apply to ConcurrentHashTable. In JDK 11 the SymbolTable is not
yet a ConcurrentHashTable. All other diffs in the patch applied
cleanly.
Tested with tier1, jtreg/runtime/SharedArchiveFile
Best,
Jiangli
More information about the jdk-updates-dev
mailing list