RFR: 8352251: Implement JEP 518: JFR Cooperative Sampling [v43]

Markus Grönlund mgronlun at openjdk.org
Mon May 26 15:31:45 UTC 2025


> Greetings,
> 
> This is the implementation of JEP [JDK-8350338 Cooperative JFR Sampling](https://bugs.openjdk.org/browse/JDK-8350338).
> 
> Implementations in this change set are provided and have been tested on the following platforms:
> 
> - windows-x64
> - windows-x64-debug
> - linux-x64
> - linux-x64-debug
> - macosx-x64
> - macosx-x64-debug
> - linux-aarch64
> - linux-aarch64-debug
> - macosx-aarch64
> - macosx-aarch64-debug
> 
> Testing: tier1-6, jdk_jfr, stress testing.
> 
> Platform porters note:
> Some platform-specific code needs to be provided, mainly in the interpreter. Take a look at the following files for changes:
> 
> - src/hotspot/cpu/x86/frame_x86.cpp
> - src/hotspot/cpu/x86/interp_masm_x86.cpp
> - src/hotspot/cpu/x86/interp_masm_x86.hpp
> - src/hotspot/cpu/x86/javaFrameAnchor_x86.hpp
> - src/hotspot/cpu/x86/macroAssembler_x86.cpp
> - src/hotspot/cpu/x86/macroAssembler_x86.hpp
> - src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp
> - src/hotspot/cpu/x86/templateTable_x86.cpp
> - src/hotspot/os_cpu/linux_x86/javaThread_linux_x86.hpp
> 
> Thanks
> Markus

Markus Grönlund has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 47 commits:

 - Merge branch 'master' into 8352251
 - PPC64 implementation.
 - 8352251-riscv-port
 - const void* ucontext
 - include order
 - Refactor interpreter ucontext assertion
 - leave_jfr_critical_section in the correct location
 - leave jfr critical section before throw_delayed_StackOverflowException
 - remove barriers
 - fetch bcp from context
 - ... and 37 more: https://git.openjdk.org/jdk/compare/a300c356...dd7d1597

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

Changes: https://git.openjdk.org/jdk/pull/24296/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24296&range=42
  Stats: 3797 lines in 112 files changed: 2409 ins; 1017 del; 371 mod
  Patch: https://git.openjdk.org/jdk/pull/24296.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24296/head:pull/24296

PR: https://git.openjdk.org/jdk/pull/24296


More information about the hotspot-jfr-dev mailing list