RFR: JDK-8302810: NMT gtests don't correctly check for marked ranges

Thomas Stuefe stuefe at openjdk.org
Sat Feb 18 06:32:09 UTC 2023


We have the helper functions `GtestUtils::mark_range` and `GtestUtils::check_range`. One fills a range with a byte pattern, and the other checks that range.

The latter does not assert - it just returns a boolean value. But its name implies it does, in fact, assert (as similar check_... functions in hotspot).

It is used without ASSERT_TRUE or EXPECT_TRUE in several places, which makes these tests ignore errors. This caused https://bugs.openjdk.org/browse/JDK-8302811 to be hidden.

----

Patch adds the necessary assertions (EXPECT_, in this case, since its used in a non-void subfunction).

It also renames `GtestUtils::check_range` to `GtestUtils::is_range_checked`, which more clearly indicates that it returns a boolean value and won't assert on itself.

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

Commit messages:
 - JDK-8302810-NMT-gtests-range-checks-are-unchecked

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

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


More information about the hotspot-runtime-dev mailing list