RFR: 8275286: Check current thread when calling JRT methods that expect it

David Holmes dholmes at openjdk.java.net
Fri Oct 15 04:36:49 UTC 2021


On Thu, 14 Oct 2021 13:49:11 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> I found this oddity when porting Loom to x86_32. There are JRT entries that have `JavaThread* current` in their signature, and I believe that sets the expectation that JRT entry is to be called with the current thread as the argument. But, that is not mechanically checked, unless we call into some other class like `ThreadInVMfromJava`, etc. To simplify debugging, we should check current thread explicitly.
> 
> Additional testing:
>  - [x] Linux x86_64 fastdebug `tier1`
>  - [x] Linux x86_64 fastdebug `tier2`

Yes it is a requirement/expectation that all JRT method callers manifest the current JavaThread to pass to the call.

David

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

Marked as reviewed by dholmes (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/5949


More information about the hotspot-runtime-dev mailing list