[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-serviceability-dev
Subject:    RFR: 8293010: JDI ObjectReference/referringObjects/referringObjects001 fails assert(env->is_enabled(
From:       Serguei Spitsyn <sspitsyn () openjdk ! org>
Date:       2022-08-31 21:54:46
Message-ID: eZqvV9ZxHHh6mUCawcFt6FJpVIEl5jkXwh3_yogQJhQ=.ec70eb35-d31e-4d7e-b3a1-45adcf5e9e67 () github ! com
[Download RAW message or body]

The problem is that the following assert in the JvmtiExport::post_object_free is \
wrong: `  assert(env->is_enabled(JVMTI_EVENT_OBJECT_FREE), "checking");`

Even though the condition was checked before, it can be changed later as it is racy \
by JVM TI design. It has to be replaced with the check:

  if (!env->is_enabled(JVMTI_EVENT_OBJECT_FREE)) {
    return; // the event type has been already disabled
  }


In progress: mach5 nsk.jvmti and nsk.jdi test runs.

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

Commit messages:
 - 8293010: JDI ObjectReference/referringObjects/referringObjects001 fails \
assert(env->is_enabled(JVMTI_EVENT_OBJECT_FREE)) failed: checking

Changes: https://git.openjdk.org/jdk/pull/10109/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10109&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8293010
  Stats: 3 lines in 1 file changed: 2 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/10109.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10109/head:pull/10109

PR: https://git.openjdk.org/jdk/pull/10109


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic