> This is a Zero infrastructure improvement that makes Zero VM work with > AsyncGetCallTrace, and by extension, async-profiler. > > Zero is quite odd in stack management. The "real" stack actually contains the > C++ Interpreter and the rest of VM code. The Java stack is reported through > the usual "frame" mechanism the rest of VM uses to get the mapping from > Template Interpreter, stub, and compiled code. So, to support Java-centric > AsyncGetCallTrace, we t "only" need Zero to report the proper Java frames > from its ZeroStack from the profiling/signal handlers. > > Additional testing: > - [x] Linux x86_64 Zero `serviceability/AsyncGetCallTrace` now pass > - [x] Linux x86_64 Zero works with `async-profiler`
Aleksey Shipilev 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 six additional commits since the last revision: - Fix a comment - Merge branch 'master' into JDK-8274903-zero-asyncgetcalltrace - More reviews - Review feedback - Merge branch 'master' into JDK-8274903-zero-asyncgetcalltrace - Initial work: runs async-profiler successfully ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/5848/files - new: https://git.openjdk.java.net/jdk/pull/5848/files/68ef4b63..bc4ba33b Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=5848&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=5848&range=02-03 Stats: 44745 lines in 800 files changed: 32663 ins; 5661 del; 6421 mod Patch: https://git.openjdk.java.net/jdk/pull/5848.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/5848/head:pull/5848 PR: https://git.openjdk.java.net/jdk/pull/5848