453 Commits

Author SHA1 Message Date
Coleen Phillimore
adb1dcdcc2 8213107: Make ClassLoaderDataGraph iterator skip unloaded CLDs
With concurrent class unloading, the CLDG could contain unloaded CLDs while iterating in a safepoint

Reviewed-by: lfoltan, eosterlund
2018-10-31 07:06:54 -04:00
Markus Grönlund
e4f5ffc403 8213172: CDS and JFR tests fail with assert(JdkJfrEvent::is(klass)) failed: invariant
Reviewed-by: egahlin, dholmes
2018-10-31 09:09:23 +01:00
Jiangli Zhou
b9f22907d3 8203953: Rename SystemDictionary::load_shared_class(Symbol*, Handle, TRAPS) to load_shared_boot_class()
Rename SystemDictionary::load_shared_class.

Reviewed-by: coleenp
2018-10-30 22:24:04 -04:00
Ioi Lam
93395f6a9e 8212200: assert when shared java.lang.Object is redefined by JVMTI agent
Reviewed-by: dholmes, jiangli, hseigel, lfoltan, sspitsyn
2018-10-17 15:57:10 -07:00
Jiangli Zhou
0c554411b0 8205327: Clean up #if INCLUDE_CDS in classLoaderExt.cpp and classLoaderExt.hpp
Clean up #if INCLUDE_CDS in classLoaderExt.* files.

Reviewed-by: dholmes
2018-10-29 14:00:48 -04:00
Calvin Cheung
7c81535d46 8209598: Clean up how messages are printed when CDS aborts start-up
Added a new function vm_exit_during_cds_dumping() to java.cpp so that it can be used when an error condition is encountered during CDS dumping.

Reviewed-by: iklam, dholmes, jiangli
2018-10-25 21:40:17 -07:00
Mandy Chung
5e6d6b8642 8207146: Rename jdk.internal.misc.Unsafe::xxxObject to xxxReference
Reviewed-by: dholmes, thartmann
2018-10-22 17:00:04 -07:00
Ioi Lam
4abb6861ec 8212642: Remove SystemDictionary::InitOption enum
Reviewed-by: dholmes, kvn, redestad
2018-10-18 23:05:01 -07:00
Harold Seigel
ef3c0a2458 8209087: Clean up runtime code that compares 'this' to NULL
Remove 'this' to NULL comparisons from methods and check if calling objects of these methods could be NULL.

Reviewed-by: lfoltan, gziemski
2018-10-18 10:35:58 -04:00
Harold Seigel
794d864feb 7041262: VM_Version should be called instead of Abstract_VM_Version so that overriding works
Change calls to Abstract_VM_Version methods to be calls to VM_Version methods.

Reviewed-by: coleenp, kbarrett, dholmes
2018-10-16 11:08:46 -04:00
Erik Österlund
e39c5811b5 8210330: Make CLD claiming allow multiple claim bits
Reviewed-by: pliden, coleenp
2018-10-16 13:16:11 +02:00
Erik Österlund
782fa608d2 8210064: ZGC: Introduce ZConcurrentRootsIterator for scanning a subset of strong IN_NATIVE roots concurrently
Reviewed-by: pliden, kbarrett
2018-10-16 13:14:18 +02:00
Harold Seigel
8c62c2e33a 8207689: Remove perfCounter _load_instance_class_failCounter used by deleted flag UnsyncloadClass
Delete the perfCounter

Reviewed-by: lfoltan, acorn, dholmes
2018-10-10 10:18:52 -04:00
David Holmes
468b69240e 8211394: CHECK_ must be used in the rhs of an assignment statement within a block
Replace "return foo(CHECK_X);" with "return foo(THREAD);"

Reviewed-by: iklam, phh, stuefe, lfoltan
2018-10-09 20:38:13 -04:00
Jiangli Zhou
a2ad8f419f 8206009: Move CDS java heap object archiving code to heapShared.hpp and heapShared.cpp
Restructure and cleanup java heap object archiving code.

Reviewed-by: coleenp, iklam
2018-10-09 15:58:07 -04:00
Ioi Lam
2f82ed4f1d 8210388: Use hash table to store archived subgraph_info records
Reviewed-by: jiangli
2018-10-08 16:29:10 -07:00
Martin Doerr
4af2374271 8210754: print_location is not reliable enough (printing register info)
Reviewed-by: stuefe, coleenp
2018-10-04 16:39:07 +02:00
Harold Seigel
221005a3d4 8209138: Symbol constructor uses u1 as the element type of its name argument
Maske u1 the type for Symbol values and add a function to return it as a char.

Reviewed-by: dholmes, coleenp
2018-10-03 09:46:46 -04:00
Volker Simonis
d35eda31e3 8211328: Different declaration and definition of ClassLoaderData::classes_do() leads to build failures
Reviewed-by: dcubed, coleenp
2018-10-01 19:08:14 +02:00
Jiangli Zhou
061c4d7a81 8210926: vmTestbase/nsk/jvmti/scenarios/allocation/AP11/ap11t001/TestDescription.java failed with JVMTI_ERROR_INVALID_CLASS in CDS mode
Reset InstanceKlass _init_state to 'allocated' before writing out shared classes at dump time.

Reviewed-by: dholmes, coleenp
2018-10-01 00:52:37 -04:00
Coleen Phillimore
7ef28cb2bc 8209645: Split ClassLoaderData and ClassLoaderDataGraph into separate files
Reviewed-by: iklam, stuefe
2018-09-28 16:07:39 -04:00
Coleen Phillimore
06a1ea846a 8210856: Move InstanceKlass DependencyContext cleaning to SystemDictionary::do_unloading()
Already walk classes in ClassLoaderData::unload so generalize to also clean nmethod dependencies.

Reviewed-by: eosterlund, dlong, vlivanov
2018-09-26 14:01:48 -04:00
Ioi Lam
6c59cb232f 8210875: Refactor CompactHashtable
Reviewed-by: ccheung, jiangli
2018-09-18 21:47:14 -07:00
Zhengyu Gu
cf8469cceb 8210879: ClassLoaderStatsClosure does raw oop comparison
Uses oopDesc::equals() for comparing oop equality

Reviewed-by: shade
2018-09-19 16:51:22 -04:00
Coleen Phillimore
fce43c0c36 8198717: Remove compute_optional_offset
Remove optional_offset computation and related unused code from javaClasses for reflection.

Reviewed-by: redestad, lfoltan
2018-09-19 15:25:05 -04:00
Ioi Lam
1619cbd14b 8210864: Reduce the use of metaspaceShared.hpp
Reviewed-by: coleenp, lfoltan
2018-09-18 21:46:17 -07:00
Coleen Phillimore
bad4a92e55 8210559: ClassLoaderData Symbols can leak
Unrefcount the symbol names when the CLD is destroyed

Reviewed-by: lfoltan, jiangli, iklam
2018-09-14 12:10:28 -04:00
Ioi Lam
4e74846da8 8210523: runtime/appcds/cacheObject/DifferentHeapSizes.java crash
Reviewed-by: jiangli, ccheung
2018-09-12 17:45:22 -07:00
Coleen Phillimore
bbf5c1ca8d 8210422: runtime/modules/ModuleStress/ExportModuleStressTest.java - assertion failed: address not aligned: 0x00000008baadbabe
CLDG_lock caused safepoint in inconsistent state

Reviewed-by: lfoltan, eosterlund, kbarrett
2018-09-11 09:42:27 -04:00
Harold Seigel
18bbeb53e6 8210470: Remove unused Verifier::verify() Verifier::Mode argument
Remove the unused argument.

Reviewed-by: coleenp, jiangli
2018-09-11 09:53:41 -04:00
Erik Österlund
c8be228513 8210321: Create NO_KEEPALIVE CLD holder accessor
Reviewed-by: coleenp, kbarrett
2018-09-10 13:07:42 +02:00
Erik Österlund
842bc09b01 8210233: Prepare Klass::is_loader_alive() for concurrent class unloading
Reviewed-by: coleenp, pliden
2018-09-10 13:07:42 +02:00
Jiangli Zhou
bd77f790c3 8209971: TestOptionsWithRanges.java crashes in CDS mode with G1UpdateBufferSize=1
Fixup archive heap regions before restoring any archived java object at runtime.

Reviewed-by: iklam, ccheung
2018-09-07 15:18:14 -04:00
Calvin Cheung
9d6230fe4e 8185145: AppCDS custom loader support on Mac OS X
Reviewed-by: dholmes, gziemski
2018-09-06 09:30:47 -07:00
Patricio Chilano Mateo
16b92a561c 8206424: Use locking for cleaning ProtectionDomainTable
ServiceThread is now in charge of cleaning ProtectionDomainTable entries

Reviewed-by: coleenp, iklam
2018-08-31 10:22:04 -04:00
Coleen Phillimore
eb9259138f 8210155: Lock ClassLoaderDataGraph
In preparation for concurrent class unloading.

Reviewed-by: hseigel, eosterlund
2018-08-31 07:03:46 -04:00
Harold Seigel
eb51968f00 8202578: Revisit location for class unload events
Use notify_unload_class() to post JFR class unload events instead of doing a separate traversal of the class loader data graph

Reviewed-by: lfoltan, coleenp, mgronlun, egahlin
2018-08-28 10:10:11 -04:00
Zhengyu Gu
083110efa9 8209852: Counters in StringCleaningTask should be type of size_t
Converted counters to size_t type to avoid casting

Reviewed-by: coleenp
2018-08-27 17:20:29 -04:00
Coleen Phillimore
fd9fa38d21 8209821: Make JVMTI GetClassLoaderClasses not walk CLDG
And also added function with KlassClosure to remove the hacks.

Reviewed-by: lfoltan, sspitsyn
2018-08-25 11:10:21 -04:00
Jiangli Zhou
7a51b4a8fa 8208061: runtime/LoadClass/TestResize.java fails with "Load factor too high" when running in CDS mode
Allow resizing for all system dictionaries except for the shared dictionary at runtime.

Reviewed-by: iklam, gziemski
2018-08-24 15:33:28 -04:00
Gerard Ziemski
e0559bdd88 8209622: applications/kitchensink/Kitchensink.java failed with Kitchensink failed with exit code = 138
SymbolTableLock no longer checks for safepoints

Reviewed-by: coleenp, rehn
2018-08-24 09:12:51 -05:00
Roman Kennke
9ec15cedd0 8206457: Code paths from oop_iterate() must use barrier-free access
Reviewed-by: eosterlund, shade
2018-07-06 16:04:19 +02:00
Ioi Lam
5b2c081460 8208658: Make CDS archived heap regions usable even if compressed oop encoding has changed
Relocate and patch archive regions if necessary

Reviewed-by: jiangli, tschatzl
2018-08-14 09:59:37 -07:00
Coleen Phillimore
b1ce2c0fe8 8208172: SIGSEGV when owner of invokedynamic bootstrap method throws an exception - Symbol::increment_refcount()+0x0
Table for resolution errors always expect non-null message string.

Reviewed-by: dholmes, iklam
2018-08-22 07:51:07 -04:00
Patricio Chilano Mateo
4ef5590fa7 8206423: Use locking for cleaning ResolvedMethodTable
ServiceThread is now in charge of cleaning ResolvedMethodTable entries

Reviewed-by: gziemski, dholmes, coleenp
2018-08-21 10:37:02 -04:00
Coleen Phillimore
eca24bfb55 8209792: Remove ClassLoaderDataGraph::keep_alive_cld_do
Unnecessary

Reviewed-by: zgu, tschatzl
2018-08-21 10:03:22 -04:00
Coleen Phillimore
dc556f4086 8209738: Remove ClassLoaderDataGraph::*oops_do functions
Make walking CLDG more consistent.

Reviewed-by: dholmes, tschatzl
2018-08-21 09:33:41 -04:00
Ioi Lam
bc62b3a40e 8209647: constantPoolHandle::constantPoolHandle(ConstantPool*) when precompiled header is disabled
Added fieldDescriptor.inline.hpp

Reviewed-by: coleenp, shade
2018-08-20 13:58:23 -07:00
Lois Foltan
75ed173e15 8209301: JVM rename is_anonymous, host_klass to unsafe specific terminology ahead of Unsafe.defineAnonymousClass deprecation
Clean up VM anonymous class terminology.

Reviewed-by: coleenp, dholmes, mchung
2018-08-20 08:25:57 -04:00
Calvin Cheung
660c7e50f7 8209385: CDS runtime classpath checking is too strict when only classes from the system modules are archived
Skip checking the path entries which are not being referenced during CDS dump time

Reviewed-by: jiangli, iklam
2018-08-17 14:50:59 -07:00