--- old/src/share/vm/classfile/moduleEntry.cpp 2016-12-21 08:13:53.924498638 -0500 +++ new/src/share/vm/classfile/moduleEntry.cpp 2016-12-21 08:13:52.882463414 -0500 @@ -167,7 +167,6 @@ } bool ModuleEntry::has_reads() const { - assert_locked_or_safepoint(Module_lock); return ((_reads != NULL) && !_reads->is_empty()); } @@ -202,9 +201,7 @@ } void ModuleEntry::module_reads_do(ModuleClosure* const f) { - assert_locked_or_safepoint(Module_lock); assert(f != NULL, "invariant"); - if (has_reads()) { int reads_len = _reads->length(); for (int i = 0; i < reads_len; ++i) { @@ -225,7 +222,7 @@ } ModuleEntryTable::~ModuleEntryTable() { - assert_locked_or_safepoint(Module_lock); + assert(SafepointSynchronize::is_at_safepoint(), "must be at safepoint"); // Walk through all buckets and all entries in each bucket, // freeing each entry.