mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 23:04:50 +02:00
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
This commit is contained in:
parent
eea84b4feb
commit
c8990959f2
14 changed files with 109 additions and 139 deletions
|
@ -802,7 +802,7 @@ class InstanceKlass: public Klass {
|
|||
// Iterators
|
||||
void do_local_static_fields(FieldClosure* cl);
|
||||
void do_nonstatic_fields(FieldClosure* cl); // including inherited fields
|
||||
void do_local_static_fields(void f(fieldDescriptor*, TRAPS), TRAPS);
|
||||
void do_local_static_fields(void f(fieldDescriptor*, Handle, TRAPS), Handle, TRAPS);
|
||||
|
||||
void methods_do(void f(Method* method));
|
||||
void array_klasses_do(void f(Klass* k));
|
||||
|
@ -1010,7 +1010,7 @@ private:
|
|||
static void set_initialization_state_and_notify_impl (instanceKlassHandle this_k, ClassState state, TRAPS);
|
||||
static void call_class_initializer_impl (instanceKlassHandle this_k, TRAPS);
|
||||
static Klass* array_klass_impl (instanceKlassHandle this_k, bool or_null, int n, TRAPS);
|
||||
static void do_local_static_fields_impl (instanceKlassHandle this_k, void f(fieldDescriptor* fd, TRAPS), TRAPS);
|
||||
static void do_local_static_fields_impl (instanceKlassHandle this_k, void f(fieldDescriptor* fd, Handle, TRAPS), Handle, TRAPS);
|
||||
/* jni_id_for_impl for jfieldID only */
|
||||
static JNIid* jni_id_for_impl (instanceKlassHandle this_k, int offset);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue