8234624: jstack mixed mode should refer DWARF
Chris Plummer
chris.plummer at oracle.com
Fri Nov 22 16:52:31 UTC 2019
Hi Yasumasa,
Start with the following code in HotSpotAgent.java:
catch (NoSuchSymbolException e) {
throw new DebuggerException("Doesn't appear to be a HotSpot
VM (could not find symbol \"" +
e.getSymbol() + "\" in remote process)");
}
Fix it to include "e" as the cause of the DebuggerException. Then the
exception backtrace that David included below will be a bit more useful.
thanks,
Chris
On 11/22/19 12:55 AM, Yasumasa Suenaga wrote:
> Thanks David!
>
> Hmm... my slowdebug build works fine on my laptop.
> I will investigate more.
>
>
> Thanks,
>
> Yasumasa
>
>
> On 2019/11/22 17:08, David Holmes wrote:
>> On 22/11/2019 5:42 pm, Yasumasa Suenaga wrote:
>>> Hi all,
>>>
>>> I tried to get mixed stack via `jhsdb jstack --mixed`, but I couldn't.
>>> (See JBS for details)
>>>
>>> https://bugs.openjdk.java.net/browse/JDK-8234624
>>>
>>> I think it is caused by DWARF. AMD64 needs DWARF for stack
>>> unwinding, but SA does not handle it.
>>> So I created a patch. It works fine on my Fedora 31 x64 box, but it
>>> failed on submit repo.
>>>
>>> http://hg.openjdk.java.net/jdk/submit/rev/f97745e0af75
>>>
>>> Failed test was linux-x64-debug, and it is due to "gHotSpotVMTypes"
>>> was not found.
>>> I wonder why it failed, and why my serviceability/sa tests (with
>>> fastdebug build) was succeeded.
>>> Can you share details for this test?
>>> mach5-one-ysuenaga-JDK-8234624-20191122-0630-6909161
>>
>> I can't really shed any light on it, there were lots of failures -
>> see below for example. The issue is with the VM that was being
>> inspected but there's no output from that VM.
>>
>> David
>> -----
>>
>> ----------System.out:(10/413)----------
>> Starting TestUniverse
>> Started LingeredApp with G1GC and pid 31111
>> Starting clhsdb against 31111
>> [2019-11-22T07:03:42.836056Z] Gathering output for process 31133
>> [2019-11-22T07:03:44.395452Z] Waiting for completion for process 31133
>> [2019-11-22T07:03:44.395815Z] Waiting for completion finished for
>> process 31133
>> hsdb> Command not valid until attached to a VM
>> hsdb>
>> 'Heap Parameters' missing from stdout/stderr
>>
>> ----------System.err:(53/3915)----------
>> Command line:
>> ['/opt/mach5/mesos/work_dir/jib-master/install/2019-11-22-0629473.suenaga.source/linux-x64-debug.jdk/jdk-14/fastdebug/bin/java'
>> '-XX:+UnlockExperimentalVMOptions' '-XX:+UseG1GC' '-cp'
>> '/opt/mach5/mesos/work_dir/slaves/6e54f4af-e606-43b0-80ce-0a482a5988b6-S156/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/0454c404-a309-4896-bf31-90b9636056fa/runs/eed41e19-a725-491b-9ddd-c380024cedc9/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/2/serviceability/sa/TestUniverse.d:/opt/mach5/mesos/work_dir/slaves/6e54f4af-e606-43b0-80ce-0a482a5988b6-S156/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/0454c404-a309-4896-bf31-90b9636056fa/runs/eed41e19-a725-491b-9ddd-c380024cedc9/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/2/test/lib'
>> 'jdk.test.lib.apps.LingeredApp'
>> '918bf6a8-d3df-4fd1-bdca-13fc399c67f3.lck' ]
>> Attaching to process 31111, please wait...
>> Unable to connect to process ID 31111:
>>
>> Doesn't appear to be a HotSpot VM (could not find symbol
>> "gHotSpotVMTypes" in
>> remote process)
>> sun.jvm.hotspot.debugger.DebuggerException: Doesn't appear to be a
>> HotSpot VM (could not find symbol "gHotSpotVMTypes" in remote process)
>> at
>> jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.setupVM(HotSpotAgent.java:413)
>> at
>> jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.go(HotSpotAgent.java:306)
>> at
>> jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.attach(HotSpotAgent.java:141)
>> at
>> jdk.hotspot.agent/sun.jvm.hotspot.CLHSDB.attachDebugger(CLHSDB.java:180)
>> at jdk.hotspot.agent/sun.jvm.hotspot.CLHSDB.run(CLHSDB.java:61)
>> at jdk.hotspot.agent/sun.jvm.hotspot.CLHSDB.main(CLHSDB.java:40)
>> at
>> jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.runCLHSDB(SALauncher.java:270)
>> at
>> jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.main(SALauncher.java:406)
>> stdout: [ Command not valid until attached to a VM
>> ];
>> stderr: [ Command not valid until attached to a VM
>> ]
>> exitValue = -1
>>
>> LingeredApp stdout: [];
>> LingeredApp stderr: []
>> LingeredApp exitValue = 0
>> java.lang.RuntimeException: 'Heap Parameters' missing from stdout/stderr
More information about the serviceability-dev
mailing list