Integrated: 8297600: Check current thread in selected JRT_LEAF methods
Aleksey Shipilev
shade at openjdk.org
Wed Nov 30 09:12:26 UTC 2022
On Thu, 24 Nov 2022 19:23:29 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
> With [JDK-8275286](https://bugs.openjdk.org/browse/JDK-8275286), we added the `Thread::current()` checks for most of the JRT entries. But `JRT_LEAF` is still not checked, because not every `JRT_LEAF` carries a `JavaThread` argument. Having assertions there helps for two reasons. First, these methods can be called from the stub/compiler code, which might be erroneous with thread handling (especially in x86_32 that does not have a dedicated thread register). Second, in the post-Loom world, current thread can change suddenly, as evidenced here: https://mail.openjdk.org/pipermail/hotspot-compiler-dev/2022-November/060779.html.
>
> We can add the thread checks to relevant `JRT_LEAF` methods that accept `JavaThread*` too.
>
> Additional testing:
> - [x] Linux x86_64 fastdebug `tier1`
> - [x] Linux x86_64 fastdebug `tier2`
> - [x] Linux x86_32 fastdebug `tier1`
> - [x] Linux x86_32 fastdebug `tier2`
This pull request has now been integrated.
Changeset: b3501fd1
Author: Aleksey Shipilev <shade at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/b3501fd11c59813515b46f80283e22b094c6e251
Stats: 19 lines in 7 files changed: 19 ins; 0 del; 0 mod
8297600: Check current thread in selected JRT_LEAF methods
Reviewed-by: dholmes, coleenp
-------------
PR: https://git.openjdk.org/jdk/pull/11359
More information about the hotspot-dev
mailing list