Re: RFR: 8280844: Epoch shift synchronization point for Compiler threads is inadequate [v2]

2022-05-16 Thread Erik Gahlin
On Mon, 16 May 2022 11:37:43 GMT, Markus Grönlund  wrote:

>> Greetings,
>> 
>> [JDK-8233111](https://bugs.openjdk.java.net/browse/JDK-8233111) attempted to 
>> address artefact tagging for Compiler threads, letting threads run 
>> _thread_in_native to avoid the transition. Unfortunately, that attempt 
>> proved inadequate.
>> 
>> The epoch race is avoided only by performing the transition to _thread_in_vm.
>> 
>> Testing: jdk_jfr
>> 
>> Thanks
>> Markus
>
> Markus Grönlund has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   delegate assertion

Marked as reviewed by egahlin (Reviewer).

-

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


Re: RFR: 8280844: Epoch shift synchronization point for Compiler threads is inadequate [v2]

2022-05-16 Thread Markus Grönlund
> Greetings,
> 
> [JDK-8233111](https://bugs.openjdk.java.net/browse/JDK-8233111) attempted to 
> address artefact tagging for Compiler threads, letting threads run 
> _thread_in_native to avoid the transition. Unfortunately, that attempt proved 
> inadequate.
> 
> The epoch race is avoided only by performing the transition to _thread_in_vm.
> 
> Testing: jdk_jfr
> 
> Thanks
> Markus

Markus Grönlund has updated the pull request incrementally with one additional 
commit since the last revision:

  delegate assertion

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/8724/files
  - new: https://git.openjdk.java.net/jdk/pull/8724/files/9ce10130..b4e59b72

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=8724&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=8724&range=00-01

  Stats: 3 lines in 1 file changed: 0 ins; 2 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8724.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8724/head:pull/8724

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


Re: RFR: 8280844: Epoch shift synchronization point for Compiler threads is inadequate

2022-05-16 Thread David Holmes
On Mon, 16 May 2022 10:17:42 GMT, Markus Grönlund  wrote:

> Greetings,
> 
> [JDK-8233111](https://bugs.openjdk.java.net/browse/JDK-8233111) attempted to 
> address artefact tagging for Compiler threads, letting threads run 
> _thread_in_native to avoid the transition. Unfortunately, that attempt proved 
> inadequate.
> 
> The epoch race is avoided only by performing the transition to _thread_in_vm.
> 
> Testing: jdk_jfr
> 
> Thanks
> Markus

src/hotspot/share/compiler/compilerEvent.cpp line 126:

> 124: static inline void commit(EventType& event) {
> 125:   JavaThread* thread = JavaThread::current();
> 126:   assert(thread->thread_state() == _thread_in_native, "invariant");

You don't need this assert as `ThreadInVMfromNative` already has it.

-

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


RFR: 8280844: Epoch shift synchronization point for Compiler threads is inadequate

2022-05-16 Thread Markus Grönlund
Greetings,

[JDK-8233111](https://bugs.openjdk.java.net/browse/JDK-8233111) attempted to 
address artefact tagging for Compiler threads, letting threads run 
_thread_in_native to avoid the transition. Unfortunately, that attempt proved 
inadequate.

The epoch race is avoided only by performing the transition to _thread_in_vm.

Testing: jdk_jfr

Thanks
Markus

-

Commit messages:
 - 8280844

Changes: https://git.openjdk.java.net/jdk/pull/8724/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8724&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8280844
  Stats: 102 lines in 6 files changed: 14 ins; 84 del; 4 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8724.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8724/head:pull/8724

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