RFR: 8351661: NMT: VMATree should support separate call-stacks for reserve and commit operations [v7]

Gerard Ziemski gziemski at openjdk.org
Wed Apr 2 19:06:51 UTC 2025


On Tue, 25 Mar 2025 14:57:04 GMT, Afshin Zafari <azafari at openjdk.org> wrote:

>> In NMT detail mode, we need to have separate call-stacks for Reserve and Commit operations.
>> This PR adds a second stack to every node that will be used when committing (and uncommitting) the start node of a reserved region.
>
> Afshin Zafari has updated the pull request incrementally with one additional commit since the last revision:
> 
>   fix the GHA failures.

I'd love to see an abstract, non-implementation, way to describe all the cases, something like:


pre:
..................................
post:
...L1------------------------R1...
L1=[S?,S1,R?]
R1=[S1,S?,L?]


where "." means empty region, "-" means reserved, "+" committed, Lx left edge metadata, Rx right edge metadata, S? invalid stack, Sx valid stack, etc...

then once we are in agreement that we have all the cases covered, we provide an implementation for them.

As far as the implementation is concerned, let's not optimize too early, i.e. no common code or sharing code: each case should stand on its own, without having to follow code above it, or below it.

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

PR Comment: https://git.openjdk.org/jdk/pull/24028#issuecomment-2773435319
PR Comment: https://git.openjdk.org/jdk/pull/24028#issuecomment-2773447414


More information about the hotspot-runtime-dev mailing list