Integrated: 8262910: Cleanup THREAD/TRAPS/naming and typing issues in ObjectMonitor and related code

David Holmes dholmes at openjdk.java.net
Wed Mar 10 22:37:09 UTC 2021


On Wed, 3 Mar 2021 05:15:48 GMT, David Holmes <dholmes at openjdk.org> wrote:

> ObjectMonitors can only be used by JavaThreads (modulo some interactions with hashcodes and deflation) but we use "Thread*" almost everywhere mainly due to use of TRAPS (and TRAPS will itself use JavaThread once JDK-8252685 is done). Also some uses of TRAPS in the API's are wrong as, for example, monitor entry can never throw an exception.
> 
> So this cleanup tackles:
> - remove incorrect use of TRAPS
> - change "Thread*" to "JavaThread*" where applicable
> - don't use THREAD for things not related to exception processing
> - standardise the naming so that we have "JavaThread* current" rather a mix if Self/THREAD/jt etc.
> - remove unnecessary as_Java_thread() conversions
> - other misc cleanup I noticed in some functions
> 
> The cleanup is predominantly in objectMonitor.* and synchronizer.* but with a fan out to the users of those APIs. No attempt is made to cleanup the callers beyond ensuring we have a suitable JavaThread reference for the calls. 
> 
> Thanks,
> David

This pull request has now been integrated.

Changeset: c6d74bd9
Author:    David Holmes <dholmes at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/c6d74bd9
Stats:     535 lines in 18 files changed: 14 ins; 65 del; 456 mod

8262910: Cleanup THREAD/TRAPS/naming and typing issues in ObjectMonitor and related code

Reviewed-by: coleenp, pchilanomate, dcubed, cjplummer, sspitsyn

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

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


More information about the hotspot-runtime-dev mailing list