RFR: 8339307: jhsdb jstack could not trace FFM upcall frame [v4]

Yasumasa Suenaga ysuenaga at openjdk.org
Wed Sep 4 00:35:21 UTC 2024


On Tue, 3 Sep 2024 19:39:59 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:

>> Yasumasa Suenaga has updated the pull request incrementally with three additional commits since the last revision:
>> 
>>  - Update test/hotspot/jtreg/serviceability/sa/LingeredAppWithFFMUpcall.java
>>    
>>    Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
>>  - Update test/hotspot/jtreg/serviceability/sa/LingeredAppWithFFMUpcall.java
>>    
>>    Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
>>  - Update test/hotspot/jtreg/serviceability/sa/LingeredAppWithFFMUpcall.java
>>    
>>    Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
>
> test/hotspot/jtreg/serviceability/sa/TestJhsdbJstackUpcall.java line 57:
> 
>> 55: 
>> 56:     private static void runJstackInLoop(LingeredApp app) throws Exception {
>> 57:         for (int i = 0; i < MAX_ITERATIONS; i++) {
> 
> What is the reason for doing 20 iterations. Is it because you are waiting for THREAD_NAME to enter the sleep() call? If so, we've addressed this in the past for the general case of wanting to do a "stable"stack trace by using the LingeredApp's SteadyStateThread. LingeredApp.startApp() will not return until this thread has become stable (blocked). Maybe you can do something similar with THREAD_NAME.

TBH this testcase is based on TestJhsdbJstackMixed.java , so I'm not stick this code. I will fix to use SteadyStateThread.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20789#discussion_r1742842412


More information about the hotspot-dev mailing list