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

Aleksey Shipilev shade at openjdk.org
Mon May 12 16:00:55 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`

Thanks! I think I need another Review to integrate.

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

PR Comment: https://git.openjdk.org/jdk/pull/25139#issuecomment-2873134170


More information about the hotspot-dev mailing list