RFR: 8329661: Refactor ScavengableNMethods::verify_unlisted_nmethods

Stefan Karlsson stefank at openjdk.org
Thu Apr 4 12:56:08 UTC 2024


On Thu, 4 Apr 2024 11:28:17 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> Simple removing redundant verification.

Could you give a more detailed description why this is redundant. With stack traces and all?

I'm a little worried that this relies on the verify_nmethod call here:

void CodeCache::blobs_do(CodeBlobClosure* f) {
  assert_locked_or_safepoint(CodeCache_lock);
  FOR_ALL_ALLOCABLE_HEAPS(heap) {
    FOR_ALL_BLOBS(cb, *heap) {
      f->do_code_blob(cb);
#ifdef ASSERT
      if (cb->is_nmethod()) {
        Universe::heap()->verify_nmethod((nmethod*)cb);
      }
#endif //ASSERT
    }
  }
}


I'm not convinced that we should have that verification in the verification code and has been considering removing it.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/18621#issuecomment-2037134485


More information about the hotspot-gc-dev mailing list