[jdk21u-dev] RFR: 8335409: Can't allocate and retain memory from resource area in frame::oops_interpreted_do oop closure after 8329665

Aleksey Shipilev shade at openjdk.org
Thu Aug 22 12:32:30 UTC 2024


This fixes the regression introduced by [JDK-8329665](https://bugs.openjdk.org/browse/JDK-8329665), which added `ResourceMark` in `frame::oops_interpreted_do`. This is not really correct, as closures we call with that method can do resource allocations. The patch avoids this problem by cleanly allocating on C heap.

The mainline patch wants `has_valid_mask` infrastructure added as part of [JDK-8315954](https://bugs.openjdk.org/browse/JDK-8315954). That patch has implications for Graal, and have unresolved bug tail. Therefore, I just picked up relevant infra hunks here.

Additional testing:
 - [ ] Linux x86_64 server fastedebug, `all`
 - [ ] Linux AArch64 server fastedebug, `all`

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

Commit messages:
 - Backport 7ab96c74e2c39f430a5c2f65a981da7314a2385b

Changes: https://git.openjdk.org/jdk21u-dev/pull/942/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk21u-dev&pr=942&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8335409
  Stats: 57 lines in 3 files changed: 12 ins; 17 del; 28 mod
  Patch: https://git.openjdk.org/jdk21u-dev/pull/942.diff
  Fetch: git fetch https://git.openjdk.org/jdk21u-dev.git pull/942/head:pull/942

PR: https://git.openjdk.org/jdk21u-dev/pull/942


More information about the jdk-updates-dev mailing list