153 Commits

Author SHA1 Message Date
Tobias Hartmann
d50dfdb399 8054402: "klass->is_loader_alive(_is_alive)) failed: must be alive" for anonymous classes
Because anonymous classes are not in the system dictionary, we have to set 'unloading_occurred' based on 'CLDG::do_unloading()'. Added jtreg test.

Reviewed-by: kvn, coleenp
2014-08-14 09:15:39 +02:00
Ioi Lam
bbe6f51f81 8046070: Class Data Sharing clean up and refactoring
Cleaned up CDS to be more configurable, maintainable and extensible

Reviewed-by: dholmes, coleenp, acorn, mchung
2014-08-12 17:29:00 -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
Coleen Phillimore
cef2b3be11 8039150: host_klass invariant fails when verifying newly loaded JSR-292 anonymous classes
Initialize host_klass while parsing the class with the other initializations.

Reviewed-by: sspitsyn, stefank
2014-06-18 13:58:13 -04:00
Harold Seigel
b6a2f946f6 8031819: Remove legacy jdk checks and code
Delete old jdk specific code.

Reviewed-by: dholmes, coleenp, zgu, lfoltan
2014-06-11 09:58:23 -04:00
Yuri Gaevsky
cc3c656cf1 8025580: Temporary flags: UseNewReflection and ReflectionWrapResolutionErrors
The fix removes all UseNewReflection/ReflectionWrapResolutionErrors occurrences/logic and adds them into the list of obsolete_jvm_flags in arguments.cpp.

Reviewed-by: coleenp, hseigel
2014-05-15 17:38:50 -04:00
Coleen Phillimore
388434f387 Merge 2014-05-12 09:47:57 -04:00
David Chase
305ec3bd3f 8037816: Fix for 8036122 breaks build with Xcode5/clang
Repaired or selectively disabled offending formats; future-proofed with additional checking

Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00
Christian Thalinger
b2d6f9f78a Merge 2014-05-08 15:08:45 -07:00
Coleen Phillimore
39f7049fbb Merge 2014-05-07 18:19:31 -04:00
Gerard Ziemski
ed9c096396 8038654: Separate SymbolTable and StringTable code
Refactor stringTable class out of symbolTable, making sure all includes are minimal set and are sorted.

Reviewed-by: coleenp, stefank
2014-05-07 14:16:45 -05:00
Coleen Phillimore
7e2463ea72 8023697: failed class resolution reports different class name in detail message for the first and subsequent times
Cache detail message when we cache exception for constant pool resolution.

Reviewed-by: acorn, twisti, jrose
2014-05-05 19:53:00 -04:00
Goetz Lindenmaier
6e6f0720a9 8042195: Introduce umbrella header orderAccess.inline.hpp
Reviewed-by: dholmes, kvn, stefank, twisti
2014-04-29 15:17:27 +02:00
Tobias Hartmann
06c26b6f97 8036956: remove EnableInvokeDynamic flag
The EnableInvokeDynamic flag and all support code is removed because it is not longer used in JDK 9.

Reviewed-by: kvn, twisti
2014-04-29 08:08:44 +02:00
Coleen Phillimore
c8990959f2 8028497: SIGSEGV at ClassLoaderData::oops_do(OopClosure*, KlassClosure*, bool)
Keep class in CLD::_klasses list and mirror created for CDS classes if OOM during restore_shareable_info(). This keeps pointers consistent for CMS.

Reviewed-by: ehelin, stefank, jmasa, iklam
2014-04-08 13:58:38 -04: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
Roland Westrelin
bbb97e5b39 8029383: assert(counter_changed) failed: failed dependencies, but counter didn't change
No call to SystemDictionary::notice_modification() when class is defined through Unsafe.defineAnonymousClass() can caused missed dependency change.

Reviewed-by: kvn, twisti
2013-12-13 09:25:44 +01: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
Christian Thalinger
be1ae599ee 8026502: java/lang/invoke/MethodHandleConstants.java fails on all platforms
Reviewed-by: iveresov, jrose
2013-10-23 15:44:12 -07:00
Thomas Schatzl
30ed89669a 8003420: NPG: make new GC root for pd_set
Move protection domain oops from system dictionary entries into a seperate set; the system dictionary references entries in that set now. This allows fast iteration during non-classunloading garbage collection. Implementation based on initial prototype from Ioi Lam (iklam).

Reviewed-by: coleenp, iklam
2013-10-09 10:57:01 +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
Coleen Phillimore
7a409b13e0 8005056: NPG: Crash after redefining java.lang.Object
Need to walk array class vtables replacing old methods too if j.l.o redefined

Reviewed-by: sspitsyn, dcubed, ctornqvi
2013-05-13 15:37:08 -04:00
Harold Seigel
768a1b55cf 8013648: Guarantee(VerifyBeforeGC || VerifyDuringGC || VerifyBeforeExit || VerifyAfterGC) failed: too expensive
Fix code to call correct version of function find_class().

Reviewed-by: coleenp, rdurbin, dcubed
2013-05-06 09:10:21 -04:00
John Cuthbertson
90d010120f 8011343: Add new flag for verifying the heap during startup
Perform verification during VM startup under control of new flag and within a VMOperation.

Reviewed-by: stefank, jmasa, brutisso
2013-04-05 10:20:04 -07:00
Bharadwaj Yadavalli
4b9150eaf7 Merge 2013-04-04 17:01:34 -07:00
Ioi Lam
cbe728a9bd 8010723: fatal error: acquiring lock Metaspace allocation lock/5 out of order
Avoid holding SystemDictionary_lock while calling Klass::remove_unshareable_info

Reviewed-by: coleenp, acorn
2013-03-31 21:43:10 -04:00
Karen Kinnear
b79e2c6803 8009731: Confusing error message for loader constraint violation
Fix text, overwritten type and holder for resolved method

Reviewed-by: coleenp, dcubed, minqi, dholmes
2013-03-27 14:10:59 -04:00
Christian Thalinger
6964a690ed 7198429: need checked categorization of caller-sensitive methods in the JDK
Reviewed-by: kvn, jrose
2013-03-25 17:13:26 -07:00
Ioi Lam
6f76ade8e1 8007725: NPG: Klass::restore_unshareable_info() triggers assert(k->java_mirror() == NULL)
Check for exception during SystemDictionary::resolve_instance_class_or_null() and clean up.

Reviewed-by: coleenp, acorn, hseigel, minqi
2013-03-15 17:24:40 -04:00
Stefan Karlsson
9ed09d08f5 8008549: NPG: SystemDictionary::find(...) unnecessarily keeps class loaders alive
SystemDictionary::find(...) should not create and register ClassLoaderData objects for class loaders.

Co-authored-by: Erik Helin <erik.helin@oracle.com>
Reviewed-by: coleenp, acorn
2013-02-21 17:22:15 +01:00
Zhengyu Gu
fc0efc91c8 8000692: Remove old KERNEL code
Removed depreciated kernel VM source code from hotspot VM

Reviewed-by: dholmes, acorn
2013-01-25 10:04:08 -05:00
Karen Kinnear
472004ca58 7199207: NPG: Crash in PlaceholderTable::verify after StackOverflow
Reduce scope of placeholder table entries to improve cleanup

Reviewed-by: dholmes, coleenp
2013-01-10 17:38:20 -05:00
Coleen Phillimore
7aa43fc5d8 8000662: NPG: nashorn ant clean test262 out-of-memory with Java heap
Add ClassLoaderData object for each anonymous class with metaspaces to allocate in.

Reviewed-by: twisti, jrose, stefank
2012-11-29 16:50:29 -05:00
Harold Seigel
4aad9b74e7 8001471: Klass::cast() does nothing
Remove function Klass::cast() and calls to it.

Reviewed-by: dholmes, coleenp
2012-11-12 16:15:05 -05:00
Jon Masamitsu
ea25b80875 Merge 2012-10-17 13:59:57 -07:00
Vladimir Kozlov
5f132a5ec3 Merge 2012-10-12 09:22:52 -07:00
Christian Thalinger
222b2457ed 8000740: remove LinkWellKnownClasses
Reviewed-by: kvn, jrose
2012-10-11 14:46:20 -07:00
Stefan Karlsson
724e5ecfb3 8000659: NPG: ClassCastExceptions are unexpectedly thrown when testing nashorn
Treat the oops in invoke_method_table() as strong roots when ClassUnloading is enabled.

Reviewed-by: kamg, coleenp
2012-10-09 22:12:25 +02:00
Rickard Bäckman
25e07fb041 Merge 2012-10-09 07:41:27 +02:00
Christian Thalinger
7162ad011c 8000263: JSR 292: signature types may appear to be unloaded
Reviewed-by: kvn, jrose
2012-10-08 17:04:00 -07:00
Christian Thalinger
59b8489a0c 7200949: JSR 292: rubybench/bench/time/bench_base64.rb fails with jruby.jar not on boot class path
Reviewed-by: jrose, kvn
2012-10-01 14:50:10 -07:00
Coleen Phillimore
28047d6a0f 8000213: NPG: Should have renamed arrayKlass and typeArrayKlass
Capitalize these metadata types (and objArrayKlass)

Reviewed-by: stefank, twisti, kvn
2012-09-29 06:40:00 -04:00
Coleen Phillimore
9a271f468a 7197269: NPG: FollowReferences has no ClassLoader -> Class link to follow
Restore java/lang/ClassLoader.addClass() upcall

Reviewed-by: sspitsyn, dcubed, jmasa
2012-09-17 10:46:59 -04:00
Coleen Phillimore
12b9a4edbb 7195833: NPG: Rename instanceClassLoaderKlass, instanceRefKlass and instanceMirrorKlass
Simple renaming to be consistent with instanceKlass->InstanceKlass renaming

Reviewed-by: stefank, jmasa
2012-09-07 12:04:16 -04:00
Coleen Phillimore
8536f548db 7195867: NPG: SAJDI tests fail with sun.jvm.hotspot.types.WrongTypeException: No suitable match for type
Need to restore the vtable in metadata when we restore the type from the shared archive.

Reviewed-by: acorn, jcoomes, jmasa, jrose
2012-09-05 20:08:08 -04:00
Jon Masamitsu
5c58d27aac 6964458: Reimplement class meta-data storage to use native memory
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com>
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
2012-09-01 13:25:18 -04:00
Christian Thalinger
12901d0e5b 7023639: JSR 292 method handle invocation needs a fast path for compiled code
6984705: JSR 292 method handle creation should not go through JNI

Remove assembly code for JDK 7 chained method handles

Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Michael Haupt <michael.haupt@oracle.com>
Reviewed-by: jrose, twisti, kvn, mhaupt
2012-07-24 10:51:00 -07:00
Jiangli Zhou
7b82f72ba9 Merge 2012-07-13 20:14:27 -04:00