RFR: 8329103: assert(!thread->in_asgct()) failed during multi-mode profiling
Andrei Pangin
apangin at openjdk.org
Wed Mar 27 01:07:31 UTC 2024
This fix makes `AsyncGetCallTrace` reentrant and async-signal-safe.
Reentrancy is required in the cases when two or more profiling engines are running at the same time, e.g., when CPU and Wall clock profilers work together and therefore one profiler may interrupt another in the middle of getting a stack trace.
Tested with async-profiler:
java -agentpath:/path/to/libasyncProfiler.so=start,event=cpu,interval=1ms,wall=1ms,file=profile.jfr
-------------
Commit messages:
- 8329103: assert(!thread->in_asgct()) failed during multi-mode profiling
Changes: https://git.openjdk.org/jdk/pull/18504/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=18504&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8329103
Stats: 4 lines in 1 file changed: 2 ins; 0 del; 2 mod
Patch: https://git.openjdk.org/jdk/pull/18504.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/18504/head:pull/18504
PR: https://git.openjdk.org/jdk/pull/18504
More information about the hotspot-runtime-dev
mailing list