Commit graph

59 commits

Author SHA1 Message Date
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00
Coleen Phillimore
8330d49736 8181170: resolved_references array leaks for RedefineClasses
Clear out resolved_reference from ClassLoaderData::_handles

Reviewed-by: stefank, jiangli, sspitsyn
2017-08-30 07:18:02 -04:00
Coleen Phillimore
111116dd5b 8186088: ConstantPoolCache::_resolved_references is not a JNIHandle
Make an OopHandle type to replace jobject to encapsulate these oop pointers in metadata and module entry.

Reviewed-by: sspitsyn, dholmes, jiangli, twisti
2017-08-23 12:00:39 -04:00
Ioi Lam
f7f193ae71 8072061: Automatically determine optimal sizes for the CDS regions
See new C++ class MetaspaceClosure.

Reviewed-by: coleenp, jiangli, mseledtsov
2017-08-02 18:06:38 -07:00
Coleen Phillimore
17f23d1881 8184994: Add Dictionary size logging and jcmd
Added dcmd for printing system dictionary like the stringtable and symboltable and making print functions go to outputstream rather than tty

Reviewed-by: shade, hseigel
2017-08-02 10:52:50 -04:00
Coleen Phillimore
a1f70549e4 7133093: Improve system dictionary performance
Implement one dictionary per ClassLoaderData for faster lookup and removal during class unloading

Reviewed-by: iklam, acorn, jiangli
2017-07-28 10:48:35 -04:00
Thomas Stuefe
d12604111c 8181917: Refactor UL LogStreams to avoid using resource area
Reviewed-by: ehelin, mlarsson
2017-07-21 09:50:12 +02:00
Harold Seigel
5252655a4a 8179235: PackageEntryTables should be created eagerly
Create the PackageEntryTables in the constructor for ClassLoaderData.

Reviewed-by: dholmes, sspitsyn
2017-04-27 10:08:02 -04:00
Rachel Protacio
ca72444bf9 8176472: Lazily create ModuleEntryTable
Moved the unnamed module out of the ModuleEntryTable and into the ClassLoaderData so that the MET can be lazily created only when other modules are present. Also a smaller PackageTable size.

Reviewed-by: gtriantafill, hseigel, lfoltan, coleenp
2017-04-18 13:19:42 -04:00
Coleen Phillimore
c52443f75b 8026985: Rewrite SystemDictionary::classes_do and Dictionary::classes_do to use KlassClosure
Actually remove unused functions like classes_do and methods_do.

Reviewed-by: iveresov, sspitsyn, dholmes
2017-04-12 08:02:29 -04:00
Jesper Wilhelmsson
7e8d75378e Merge 2017-03-16 16:40:41 -07:00
Erik Helin
4145e90718 8168914: Crash in ClassLoaderData/JNIHandleBlock::oops_do during concurrent marking
Reviewed-by: dholmes, tschatzl, coleenp, kbarrett, eosterlund, stefank
2017-02-23 18:57:10 +01:00
Ioi Lam
37f332b8ee 8171809: Remove unused CDS code from JDK 9
Reviewed-by: jiangli, ccheung, mseledtsov
2016-12-15 19:26:41 -08:00
Markus Grönlund
6a685f1d63 8170672: Event-based tracing to support classloader instances
Reviewed-by: hseigel, egahlin
2016-12-06 22:49:17 +01:00
Bob Vandette
929fc23c45 Merge 2017-02-24 12:41:26 -05:00
Coleen Phillimore
0b3bc5c4f0 8169881: Remove implicit Handle conversions oop->Handle
Pass THREAD to Handle as argument instead of implicit Thread::current() call.

Reviewed-by: dholmes, sspitsyn
2017-02-15 22:59:57 -05:00
Lois Foltan
2579620b6d 8162553: Crash in class unloading due to null CLD having a zero _keep_alive value
Correct the refcounting of ClassLoaderData::_keep_alive for anonymous classes.

Reviewed-by: acorn, coleenp, dholmes, jiangli
2016-08-11 11:41:11 -04:00
Lois Foltan
92eb334c91 8159262: Walking PackageEntry Export and ModuleEntry Reads Must Occur Only When Neccessary And Wait Until ClassLoader's Aliveness Determined
Fixed an issue in class unloading to delay walk until class loader's aliveness is determined of modularity lists to remove dead modules

Reviewed-by: coleenp, dholmes, sspitsyn, zgu
2016-06-28 10:11:01 -04:00
David Holmes
c301fb7188 8154750: Add missing OrderAccess operations to ClassLoaderData lock-free data structures
Reviewed-by: kbarrett, coleenp, acorn
2016-06-02 23:37:09 -04:00
Per Liden
48892f6f68 8152949: Jigsaw crash when Klass in _fixup_module_field_list is unloaded
During start up anonymous classes must be kept alive until after their mirror's module field is patched with java.base

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Reviewed-by: coleenp, hseigel
2016-04-21 09:23:04 -04:00
Alan Bateman
f30fc1c88b 8142968: Module System implementation
Initial integration of JEP 200, JEP 260, JEP 261, and JEP 282

Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: Calvin Cheung <calvin.cheung@oracle.com>
Co-authored-by: Christian Tornqvist <christian.tornqvist@oracle.com>
Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: George Triantafillou <george.triantafillou@oracle.com>
Co-authored-by: Igor Ignatyev <igor.ignatyev@oracle.com>
Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Co-authored-by: James Laskey <james.laskey@oracle.com>
Co-authored-by: Jean-Francois Denise <jean-francois.denise@oracle.com>
Co-authored-by: Jiangli Zhou <jiangli.zhou@oracle.com>
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Staffan Larsen <staffan.larsen@oracle.com>
Co-authored-by: Sundararajan Athijegannathan <sundararajan.athijegannathan@oracle.com>
Reviewed-by: acorn, ccheung, coleenp, ctornqvi, dholmes, dsimms, gtriantafill, iklam, jiangli, mgronlun, mseledtsov, cjplummer, sspitsyn, stefank, twisti, hseigel, lfoltan, alanb, mchung, dfazunen
2016-03-17 19:04:01 +00:00
Max Ockner
9cab990401 8079408: Reimplement TraceClassLoading, TraceClassUnloading, and TraceClassLoaderData with Unified Logging
TraceClassLoading,  TraceClassUnloading, and TraceClassLoaderData have been reimplemented using Unified logging.

Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Reviewed-by: iklam, coleenp, dholmes, jiangli, hseigel, rprotacio
2016-02-03 11:40:30 -05:00
Goetz Lindenmaier
b26df6b69f 8146401: Clean up oop.hpp: add inline directives and fix header files
Reviewed-by: coleenp
2016-01-04 15:41:05 +01:00
Markus Grönlund
2ad9d3192f 8140485: Class load and creation cleanup
Reviewed-by: hseigel, coleenp, sspitsyn
2015-12-08 20:04:03 +01:00
Ioi Lam
87b0df30ed 8140802: Clean up and refactor of class loading code for CDS
Reviewed-by: jiangli, acorn, coleenp
2015-08-18 11:27:23 -07:00
Coleen Phillimore
57f3125882 Merge 2015-03-13 18:59:41 +00:00
Coleen Phillimore
7b384c6958 8061205: MetadataOnStackMark only needs to walk code cache during class redefinition
Only do full metadata walk during class redefinition and only walk handles during class unloading.

Reviewed-by: sspitsyn, stefank
2015-03-13 12:40:39 -04:00
Axel Siebenborn
1a8c911881 8074561: Wrong volatile qualifier for field ClassLoaderDataGraphKlassIteratorAtomic::_next_klass
Reviewed-by: mgerdin, stefank
2015-03-06 16:47:46 +01:00
Markus Grönlund
ac5d9dad16 8065361: Fixup headers and definitions for INCLUDE_TRACE
Reviewed-by: sla, stefank
2014-11-19 16:08:01 +01:00
Coleen Phillimore
4c036f5730 8037842: Failing to allocate MethodCounters and MDO causes a serious performance drop
Stop allocating compiler profiling metadata when metaspace is full.

Reviewed-by: kvn, anoll
2014-10-30 18:38:42 -04:00
Stefan Karlsson
d410f19961 8056240: Investigate increased GC remark time after class unloading changes in CRM Fuse
Reviewed-by: mgerdin, coleenp, bdelsart
2014-10-02 10:55:36 +02:00
Jon Masamitsu
fbe6d80096 Merge 2014-07-10 13:39:18 -07:00
Stefan Karlsson
1b001a2afd 8049421: G1 Class Unloading after completing a concurrent mark cycle
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Reviewed-by: tschatzl, ehelin, brutisso, coleenp, roland, iveresov
2014-07-07 10:12:40 +02:00
Stefan Karlsson
ef1e9b3c80 8049420: Backout 8048248 to correct attribution
Reviewed-by: ehelin, brutisso
2014-07-07 12:37:11 +02:00
Stefan Karlsson
8c3aced316 8048248: G1 Class Unloading after completing a concurrent mark cycle
Reviewed-by: tschatzl, ehelin, brutisso, coleenp, roland, iveresov
2014-07-07 10:12:40 +02:00
Markus Grönlund
95d24c7361 8047812: Ensure ClassLoaderDataGraph::classes_unloading_do only delivers klasses from CLDs with non-reclaimed class loader oops
Reviewed-by: coleenp, sspitsyn, ehelin
2014-06-27 13:33:36 +02:00
Coleen Phillimore
243d697d71 8026977: NPG: Remove ConstantPool::lock
Write klass and resolved_references constant pool fields lock free.

Reviewed-by: jrose, twisti
2014-06-19 11:16:10 -04:00
Staffan Larsen
8dc26f1a17 8044107: Add Diagnostic Command to list all ClassLoaders
Reviewed-by: mgerdin, stefank
2014-06-04 11:05:30 +02:00
Coleen Phillimore
c336175c94 8038212: Method::is_valid_method() check has performance regression impact for stackwalking
Only prune metaspace virtual spaces at safepoint so walking them is safe outside a safepoint.

Reviewed-by: mgerdin, mgronlun, hseigel, stefank
2014-05-15 18:23:26 -04:00
Roland Westrelin
b21d142f01 8037970: make PrintMethodData a diagnostic options
Make PrintMethodData a diagnostic options for performance investigation

Reviewed-by: kvn, iveresov
2014-03-31 10:35:06 +02:00
Erik Helin
a45b9ead44 Merge 2014-02-25 11:02:11 +01:00
Stefan Karlsson
a235c50791 8035412: Cleanup ClassLoaderData::is_alive
Reviewed-by: coleenp, mgerdin
2014-02-21 10:19:09 +01:00
Coleen Phillimore
4ab0b2732c 8027146: Class loading verification failure if GC occurs in Universe::flush_dependents_on
Remove search in system dictionary and hacks, replace with verifying in CLD::_klasses list.

Reviewed-by: dcubed, acorn
2014-02-15 13:03:38 -05:00
Coleen Phillimore
469f290817 8029178: Parallel class loading test anonymous-simple gets SIGSEGV in Metaspace::contains
Metaspace::contains cannot look at purged metaspaces while CMS concurrently deallocates them.

Reviewed-by: mgerdin, sspitsyn, jmasa
2014-01-07 13:26:56 -05:00
Markus Grönlund
b1e3461fe5 8028128: Add a type safe alternative for working with counter based data
Reviewed-by: dholmes, egahlin
2013-11-23 12:25:13 +01:00
Fredrik Arvidsson
508272e5f5 8024423: JVMTI: GetLoadedClasses doesn't enumerate anonymous classes
Rewrite of the getLoadedClasses() method implementation to include anonymous classes.

Reviewed-by: coleenp, sspitsyn
2013-10-24 10:02:02 +02:00
Staffan Larsen
718f3252f6 8005849: JEP 167: Event-Based JVM Tracing
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Bengt Rutisson <bengt.rutisson@oracle.com>
Co-authored-by: Calvin Cheung <calvin.cheung@oracle.com>
Co-authored-by: Erik Gahlin <erik.gahlin@oracle.com>
Co-authored-by: Erik Helin <erik.helin@oracle.com>
Co-authored-by: Jesper Wilhelmsson <jesper.wilhelmsson@oracle.com>
Co-authored-by: Keith McGuigan <keith.mcguigan@oracle.com>
Co-authored-by: Mattias Tobiasson <mattias.tobiasson@oracle.com>
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Mikael Auno <mikael.auno@oracle.com>
Co-authored-by: Nils Eliasson <nils.eliasson@oracle.com>
Co-authored-by: Nils Loodin <nils.loodin@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: acorn, coleenp, sla
2013-06-10 11:30:51 +02:00
Mikael Gerdin
316993b3db 8013136: NPG: Parallel class loading tests fail after fix for JDK-8011802
Move initialization of dependencies to before allocation of CLD

Reviewed-by: stefank, coleenp
2013-04-24 19:55:02 +02:00
Mikael Gerdin
c47ec9b4ca 8011802: NPG: init_dependencies in class loader data graph can cause invalid CLD
Restructure initialization of ClassLoaderData to not add a new instance if init_dependencies fail

Reviewed-by: stefank, coleenp
2013-04-23 08:39:55 +02:00
Mikael Gerdin
0edccc9e61 8010196: NPG: Internal Error: Metaspace allocation lock -- possible deadlock
Refactor the CLD dependency list into a separate class. Use an ObjectLocker to synchronize additions to the CLD dependency list.

Reviewed-by: stefank, coleenp
2013-04-10 13:27:35 +02:00