> Please review this small fix in async_get_stack_trace(). The GrowableArrays > created to store the bci and Method* of each frame found while traversing the > stack are allocated in the resource area of the thread that calls > async_get_stack_trace(). But if the handshake is executed by the target and > if the number of frames in the stack exceeds the initial size of the > GrowableArrays then we will hit an assertion when trying to grow the size of > the arrays (see bug description). > Currently we don't see any issues because the initial size of the > GrowableArrays is 512 and our tests don't test beyond that (the maximum value > of DEPTH in the vmTestbase/nsk/stress/strace/ tests is 500). The issue can be > easily reproduced by either decreasing the initial size of the GrowableArrays > or by increasing the value of DEPTH in those strace tests. > To fix it I allocated the arrays in the C heap instead. Also I lowered the > initial size of the arrays since 512 seemed too much to start with. > Tested it by running all tests in the vmTestbase/nsk/stress/strace/ directory. > > Thanks, > Patricio
Patricio Chilano Mateo has updated the pull request incrementally with one additional commit since the last revision: Improve comment ------------- Changes: - all: https://git.openjdk.org/jdk/pull/10424/files - new: https://git.openjdk.org/jdk/pull/10424/files/5e375a83..68486d1a Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=10424&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10424&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/10424.diff Fetch: git fetch https://git.openjdk.org/jdk pull/10424/head:pull/10424 PR: https://git.openjdk.org/jdk/pull/10424