Skip to content
Permalink
Browse files
8277342: vmTestbase/nsk/stress/strace/strace004.java fails with SIGSE…
…GV in InstanceKlass::jni_id_for

Backport-of: 09e8c8c64abf4178a042c79b92d7e08e54467331
  • Loading branch information
zhengyu123 committed Jan 5, 2022
1 parent 9acabeb commit ca59b640e3370df6720090202a03325c3f8371fc
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 16 deletions.
@@ -2013,29 +2013,18 @@ Method* InstanceKlass::lookup_method_in_all_interfaces(Symbol* name,
return NULL;
}

/* jni_id_for_impl for jfieldIds only */
JNIid* InstanceKlass::jni_id_for_impl(int offset) {
/* jni_id_for for jfieldIds only */
JNIid* InstanceKlass::jni_id_for(int offset) {
MutexLocker ml(JfieldIdCreation_lock);
// Retry lookup after we got the lock
JNIid* probe = jni_ids() == NULL ? NULL : jni_ids()->find(offset);
if (probe == NULL) {
// Slow case, allocate new static field identifier
// Allocate new static field identifier
probe = new JNIid(this, offset, jni_ids());
set_jni_ids(probe);
}
return probe;
}


/* jni_id_for for jfieldIds only */
JNIid* InstanceKlass::jni_id_for(int offset) {
JNIid* probe = jni_ids() == NULL ? NULL : jni_ids()->find(offset);
if (probe == NULL) {
probe = jni_id_for_impl(offset);
}
return probe;
}

u2 InstanceKlass::enclosing_method_data(int offset) const {
const Array<jushort>* const inner_class_list = inner_classes();
if (inner_class_list == NULL) {
@@ -1204,8 +1204,6 @@ class InstanceKlass: public Klass {
void initialize_impl (TRAPS);
void initialize_super_interfaces (TRAPS);
void eager_initialize_impl ();
/* jni_id_for_impl for jfieldID only */
JNIid* jni_id_for_impl (int offset);

// find a local method (returns NULL if not found)
Method* find_method_impl(const Symbol* name,

1 comment on commit ca59b64

@openjdk-notifier
Copy link

@openjdk-notifier openjdk-notifier bot commented on ca59b64 Jan 5, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.