93 Commits

Author SHA1 Message Date
Andreas Eriksson
35a916a2a1 8149743: JVM crash after debugger hotswap with lambdas
Reviewed-by: sspitsyn, coleenp, dcubed
2016-02-18 16:15:28 +01:00
David Lindholm
ad0c208a5a 8146690: Make all classes in GC follow the naming convention
Reviewed-by: dholmes, stefank
2016-01-14 13:26:19 +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
Coleen Phillimore
b046110ab7 Merge 2015-10-28 15:03:40 +01:00
Coleen Phillimore
fc03719078 8139203: Consistent naming for klass type predicates
8138923: Remove oop coupling with InstanceKlass subclasses

Renamed oop_is_instance and friends, removed the functions in oop that dug down into InstanceKlass.

Reviewed-by: jrose, lfoltan, stefank
2015-10-28 09:47:23 -04:00
Coleen Phillimore
5179fc3488 8139163: InstanceKlass::cast passes through NULL
Reduce raw (InstanceKlass*) casts and InstanceKlass::cast, which no long allows null

Reviewed-by: twisti, kbarrett
2015-10-26 13:11:36 -04:00
Coleen Phillimore
ed82cd0ee8 Merge 2015-10-23 23:06:53 +02:00
Coleen Phillimore
f1e89ea4cc 8140274: methodHandles and constantPoolHandles should be passed as const references
Modified code to use const reference parameters

Reviewed-by: sspitsyn, twisti
2015-10-23 16:48:38 -04:00
Goetz Lindenmaier
83b3b21342 8139040: Fix initializations before ShouldNotReachHere() etc. and enable -Wuninitialized on linux
Reviewed-by: stuefe, coleenp, roland
2015-10-22 13:07:10 -04:00
Chris Hegarty
ca4787d77b 8139891: Prepare Unsafe for true encapsulation
Reviewed-by: alanb, dholmes, jrose, psandoz, twisti
2015-10-27 14:18:56 +00:00
Goetz Lindenmaier
4aad17f807 8139116: Fixes for warning "format not a string literal"
Reviewed-by: ddmitriev, david, simonis
2015-10-09 16:39:37 +02:00
David Lindholm
5770f4eb32 8042893: compiler: PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC needs to be removed from source files
8042894: runtime: PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC needs to be removed from source files

Reviewed-by: goetz, brutisso
2015-10-09 09:42:33 +02:00
Tobias Hartmann
72e8f28d56 8075805: Crash while trying to release CompiledICHolder
Removed nmethod transition to zombie outside of sweeper. Added cleaning of ICs of unloaded nmethods.

Reviewed-by: kvn, iveresov
2015-08-25 07:49:55 +02:00
Andreas Eriksson
606468abc4 8076110: VM crash when class is redefined with Instrumentation.redefineClasses
Reviewed-by: coleenp, sspitsyn
2015-06-16 15:59:57 +02:00
Coleen Phillimore
d97fc17132 8081219: hs_err improvement: Add event logging for class redefinition to the hs_err file
Use the Events::log function to save redefined classes for output to the hs_err file.

Reviewed-by: sspitsyn, jiangli, lfoltan
2015-06-04 08:05:47 -04:00
Jesper Wilhelmsson
25c41c6094 Merge 2015-05-21 21:17:56 +02:00
Serguei Spitsyn
99f8091782 8079644: memory stomping error with ResourceManagement and TestAgentStress.java
The cached class file structure must be deallocated instead of the cached class file bytes

Reviewed-by: coleenp, sla
2015-05-18 16:42:46 -07:00
Serguei Spitsyn
f7c143cbb2 8073705: more performance issues in class redefinition
Optimize the method pointer adjustments for prev klass versions and MNT

Reviewed-by: dcubed, coleenp
2015-04-27 19:51:00 -07:00
Serguei Spitsyn
89256b01cb 8066679: jvmtiRedefineClasses.cpp assert cache ptrs must match
Remove the assert and deallocate cashed class file bytes that are in collision

Reviewed-by: coleenp, dcubed
2015-04-07 20:18:28 -07:00
Zoltan Majo
379e3d6fb6 Merge 2015-03-19 18:01:39 +01: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
Serguei Spitsyn
942d1f7f32 8046246: the constantPoolCacheOopDesc::adjust_method_entries() used in RedefineClasses does not scale
Optimize the adjust_method_entries functions by using the orig_method_idnum() function

Reviewed-by: coleenp, dcubed
2015-02-25 00:30:54 -08:00
Goetz Lindenmaier
a7edf52a02 8073315: Enable gcc -Wtype-limits and fix upcoming issues
Relevant fixes in blockOffsetTable.cpp, os_linux.cpp, parCardTableModRefBS.cpp.

Reviewed-by: jwilhelm, kbarrett, simonis
2015-02-16 14:07:36 +01:00
Stefan Karlsson
4913ad5d7d 8072911: Remove includes of oop.inline.hpp from .hpp files
Reviewed-by: brutisso, coleenp, jwilhelm, simonis, dholmes
2015-02-13 14:37:35 +01:00
Serguei Spitsyn
4326ee324a 8068162: jvmtiRedefineClasses.cpp: guarantee(false) failed: OLD and/or OBSOLETE method(s) found
Adjust Unsafe methods in the itable/vtable if Unsafe is redefined

Reviewed-by: coleenp, dcubed
2015-01-26 15:51:28 -08:00
Coleen Phillimore
27a1ed85b6 8067836: The Universe::flush_foo methods belong in CodeCache
Move this code to CodeCache.

Reviewed-by: kbarrett, kvn
2015-01-06 19:30:28 -05:00
Coleen Phillimore
feb09bc118 8067713: Move clean_weak_method_links for redefinition out of class unloading
Do this work during class redefinition, only verify clean during class unloading in debug mode.

Reviewed-by: sspitsyn, roland, kbarrett
2014-12-18 16:15:21 -05:00
Andreas Eriksson
ea48bceb5e 8057043: Type annotations not retained during class redefine / retransform
Reviewed-by: coleenp, sspitsyn, jfranck
2014-10-22 13:59:56 +02:00
Coleen Phillimore
3c70d99eda 8055008: Clean up code that saves the previous versions of redefined classes
Use scratch_class to find EMCP methods for breakpoints if the old methods are still running.

Reviewed-by: dcubed, sspitsyn
2014-09-03 19:13:18 -04:00
Serguei Spitsyn
7f2b064e43 8042796: jvmtiRedefineClasses.cpp: guarantee(false) failed: OLD and/or OBSOLETE method(s) found
Relax the guaranty for deleted methods

Reviewed-by: dcubed, coleenp
2014-05-16 15:05:44 -07: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
Per Lidén
4dc240f785 8079792: GC directory structure cleanup
Reviewed-by: brutisso, stefank, david
2015-05-13 15:16:06 +02:00
Roland Westrelin
bff5f5c875 8030662: "assert(counter_changed) failed: failed dependencies, but counter didn't change" still fails
Erroneously removed call to SystemDictionary::notice_modification() from jvmti with fix for 8029383

Reviewed-by: iveresov, twisti, kvn
2014-01-14 12:44:12 +01: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
Karen Kinnear
088ded71f9 8009130: Lambda: Fix access controls, loader constraints
New default methods list with inherited superinterface methods

Reviewed-by: minqi, sspitsyn, coleenp
2013-10-07 12:20:28 -04:00
Coleen Phillimore
b08778e139 8025238: nsk/jvmti/scenarios/bcinstr/BI04/bi04t002 crashed with SIGSEGV
Redefined class in stack trace may not be found by method_idnum so handle null.

Reviewed-by: sla, dcubed, sspitsyn
2013-10-03 18:53:27 -04:00
Daniel D. Daugherty
156b06d897 Merge 2013-09-20 12:58:35 -07:00
Coleen Phillimore
ec5e07f810 8022887: Assertion hit while using class and redefining it with RedefineClasses simultaneously
Need to refetch each method from InstanceKlass after all safepoints.  Removed leaky PreviousVersionInfo code.

Reviewed-by: dcubed, sspitsyn
2013-09-20 09:30:02 -04:00
Niclas Adlertz
afef481831 Merge 2013-09-19 18:01:39 +02:00
David Chase
222c735458 8014013: CallInfo structure no longer accurately reports the result of a LinkResolver operation
Enhance method resolution and resulting data structures, plus some refactoring.

Reviewed-by: twisti, acorn, jrose
2013-09-13 22:38:02 -04:00
Serguei Spitsyn
2823ae6943 8024346: ~CautiouslyPreserveExceptionMark - assert(!_thread->has_pending_exception()) failed: unexpected exception generated
Pending exceptions must be handled properly after a call to the JVMTI merge_cp_and_rewrite

Reviewed-by: coleenp, dholmes
2013-09-13 12:48:50 -07:00
Serguei Spitsyn
47e8234251 8024345: 'assert(_value != NULL) failed: resolving NULL _value' from VM_RedefineClasses::set_new_constant_pool
The OOME's in the JVMTI merge_cp_and_rewrite and set_new_constant_pool must be handled correctly

Reviewed-by: coleenp, dholmes
2013-09-13 12:47:44 -07:00
Serguei Spitsyn
5c11ecebfb 8017230: Internal Error (jvmtiRedefineClasses.cpp:1662): guarantee(false) failed: insert_space_at() failed
Handle pending exceptions instead of firing a guarantee()

Reviewed-by: coleenp, dholmes
2013-09-13 12:46:40 -07:00
Jiangli Zhou
5c6c0a8d1d 8023547: com/sun/jdi/RedefineMulti.sh fails with IllegalArgumentException after JDK-8021948
Need to check if the constant pool mapping returns 0.

Reviewed-by: coleenp, sspitsyn
2013-08-22 19:27:42 -04:00
Jiangli Zhou
553b498f51 8021948: Change InstanceKlass::_source_file_name and _generic_signature from Symbol* to constant pool indexes
Change InstanceKlass::_source_file_name and _generic_signature to u2 fields.

Reviewed-by: coleenp, iklam
2013-08-19 14:59:54 -04:00
Coleen Phillimore
a25f924de6 8009728: nsk/jvmti/AttachOnDemand/attach030 crashes on Win32
ActiveMethodOopsCache was used to keep track of old versions of some methods that are cached in Universe but is buggy with permgen removal and not needed anymore

Reviewed-by: sspitsyn, dcubed, mseledtsov
2013-08-12 17:24:54 -04:00
Jiangli Zhou
3dfcb4125e 8020309: Eliminate InstanceKlass::_cached_class_file_len
Use JvmtiCachedClassFileData.

Reviewed-by: iklam, sspitsyn, dcubed
2013-07-17 18:06:29 -04:00
Serguei Spitsyn
6d485348e1 8014052: JSR292: assert(end_offset == next_offset) failed: matched ending
A call to the finalize_operands_merge() must be unconditional

Reviewed-by: kvn, twisti
2013-06-03 14:28:37 -07: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
Coleen Phillimore
8320660846 8013063: nsk/jvmti/RetransformClasses/retransform001 failed debug version on os::free
Clear out class_file_bytes so they aren't deallocated twice

Reviewed-by: dcubed, sspitsyn
2013-05-07 09:46:15 -04:00