On 10/03/2021 12:19 pm, Daniel D.Daugherty wrote:
On Wed, 10 Mar 2021 00:57:40 GMT, David Holmes <[email protected]> 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

David Holmes has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains 10 additional commits since the 
last revision:

  - Merge branch 'master' into 8262910-sync-traps
  - Updated request_deflate_idle_monitors as it can only be called by a 
JavaThread via WhiteBox API
  - Fix typo
  - Fixed up BiasedLocking code in ObjectSynchronizer::enter
  - iFixed alignment in macro
  - More pointer declaration style fixups
  - ObjectMonitor::exit can't actually throw IMSE so replaced TRAPS with 
JavaThread* current
  - Style fix: Thread *  -> Thread* in type declarations
  - Forgot to updated Graal config for JVMCI structs change
  - 8262910: Cleanup THREAD/TRAPS/naming and typing issues in ObjectMonitor and 
related code

Marked as reviewed by dcubed (Reviewer).

Thanks for the final re-review Dan. I'll push once testing is complete.

David

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

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

Reply via email to