RFR: 8356631: OopHandle replacement methods should not be called on empty handles

Erik Österlund eosterlund at openjdk.org
Tue May 13 12:21:53 UTC 2025


On Fri, 9 May 2025 11:09:59 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> I noticed that in OopHandle/WeakHandle we have {replace,xchg,cmpxchg} methods that overwrite the handle. This is only safe to do when the handle is not empty -- i.e. when there is a storage allocated for it in relevant OopStorage. Otherwise we attempt the store to nullptr, and get a SEGV.
> 
> Only OopHandle::replace does the assertion for this. We need to add these asserts everywhere else.
> 
> Additional testing:
>  - [x] Linux x86_64 server fastdebug, `all`

Marked as reviewed by eosterlund (Reviewer).

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

PR Review: https://git.openjdk.org/jdk/pull/25139#pullrequestreview-2836534169


More information about the hotspot-dev mailing list