Yes, this is consistently reproducible on my system. I'm happy to provide more information if it will help. If I knew more about how the Java stack worked, I could do more of this debugging myself. Is it ever legal to have a Method pointer of null?
Daniel -----Original Message----- From: Jini George [mailto:jini.geo...@oracle.com] Sent: Wednesday, February 7, 2018 11:34 PM To: stewartd.qdt <stewartd....@qualcommdatacenter.com>; serviceability-dev <serviceability-dev@openjdk.java.net>; David Holmes <david.hol...@oracle.com>; Sharath Ballal <sharath.bal...@oracle.com>; yasue...@gmail.com Subject: Re: Issue with 8192897: NPE occurs on clhsdb jstack Thanks for this, Daniel. Is this consistently reproducible on the Aarch64 system with the -Xcomp part of the test ? Thanks, Jini On 2/7/2018 10:12 PM, stewartd.qdt wrote: > I am getting Null Pointer Exceptions with both ClhsdbJstack.java and > ClhsdbFindPC.java. It appears the addition of testing with '-Xcomp` > causing a Method to come back as null during the stack walk. I have > included the results of the Jstack test (the FindPC is similar) for > the Xcomp section below. I have created bug JDK-8196969 > <https://bugs.openjdk.java.net/browse/JDK-8196969>. The full .jtr is > attached there. I am not familiar enough with the Java stack to know > if having a null Method pointer is valid or not. > > Thanks, > > Daniel > > hsdb> > > Command line: > ['/home/stewartd/openjdk/OpenJDK/hs/build/linux-aarch64-normal-server-release/images/jdk/bin/java' > > '-Xcomp' '-cp' > '/home/stewartd/openjdk/OpenJDK/hs/JTwork/classes/serviceability/sa/ClhsdbJstack.d:/home/stewartd/openjdk/OpenJDK/hs/JTwork/classes/test/lib' > > 'jdk.test.lib.apps.LingeredApp' > '717a6b55-bcf8-405e-9d5a-afe1212f0fc6.lck' ] > > Started LingeredApp (-Xcomp) with pid 23731 > > Starting clhsdb against 23731 > > Warning! JS Engine can't start, some commands will not be available. > > hsdb> Deadlock Detection: > > No deadlocks found. > > "Common-Cleaner" #22 daemon prio=8 tid=0x0000ffffa0528000 nid=0x5d2d > in > Object.wait() [0x0000fffe427de000] > > java.lang.Thread.State: TIMED_WAITING (on object monitor) > > JavaThread state: _thread_blocked > > - java.lang.ref.ReferenceQueue.remove(long) @bci=59, line=151, > pc=0x0000ffff892af7c4, Method*=0x0000fffe49851a98 (Compiled frame; > information may be imprecise) > > - waiting to lock <0x0000000101c956f0> (a > java.lang.ref.ReferenceQueue$Lock) > > - jdk.internal.ref.CleanerImpl.run() @bci=65, line=148, > pc=0x0000ffff892ac8e4, Method*=0x0000fffe49ab23d8 (Compiled frame) > > - java.lang.Thread.run() @bci=11, line=844, pc=0x0000ffff892a9d30, > Method*=0x0000fffe49738ee0 (Compiled frame) > > - jdk.internal.misc.InnocuousThread.run() @bci=20, line=134, > pc=0x0000ffff892a9d30, Method*=0x0000fffe49aba318 (Compiled frame) > > Locked ownable synchronizers: > > - None > > "Signal Dispatcher" #4 daemon prio=9 tid=0x0000ffffa04a6800 nid=0x5d05 > runnable [0x0000000000000000] > > java.lang.Thread.State: RUNNABLE > > JavaThread state: _thread_blocked > > Locked ownable synchronizers: > > - None > > "Finalizer" #3 daemon prio=8 tid=0x0000ffffa0494000 nid=0x5d04 in > Object.wait() [0x0000fffe492ee000] > > java.lang.Thread.State: WAITING (on object monitor) > > JavaThread state: _thread_blocked > > - java.lang.ref.ReferenceQueue.remove(long) @bci=59, line=151, > pc=0x0000ffff888e15a0, Method*=0x0000fffe49851a98 (Interpreted frame) > > - waiting to lock <0x0000000101c09528> (a > java.lang.ref.ReferenceQueue$Lock) > > - java.lang.ref.ReferenceQueue.remove() @bci=2, line=172, > pc=0x0000ffff888e12c0, Method*=0x0000fffe49851b40 (Interpreted frame) > > - java.lang.ref.Finalizer$FinalizerThread.run() @bci=37, line=216, > pc=0x0000ffff888e12c0, Method*=0x0000fffe49856cb0 (Interpreted frame) > > Locked ownable synchronizers: > > - None > > "Reference Handler" #2 daemon prio=10 tid=0x0000ffffa0492000 > nid=0x5d03 waiting on condition [0x0000fffe494ee000] > > java.lang.Thread.State: RUNNABLE > > JavaThread state: _thread_blocked > > - java.lang.ref.Reference.processPendingReferences() @bci=0, line=166, > pc=0x0000ffff888e15a0, Method*=0x0000fffe49733100 (Interpreted frame) > > - java.lang.ref.Reference.access$000() @bci=0, line=44, > pc=0x0000ffff888e15a0, Method*=0x0000fffe49733788 (Interpreted frame) > > - java.lang.ref.Reference$ReferenceHandler.run() @bci=0, line=138, > pc=0x0000ffff888e15a0, Method*=0x0000fffe4984ffa0 (Interpreted frame) > > Locked ownable synchronizers: > > - None > > "main" #1 prio=5 tid=0x0000ffffa0010000 nid=0x5cb5 waiting on > condition [0x0000ffffa5d2e000] > > java.lang.Thread.State: TIMED_WAITING (sleeping) > > JavaThread state: _thread_blocked > > Error occurred during stack walking: > > Locked ownable synchronizers: > > - None > > hsdb> > > ----------System.err:(147/8216)---------- > > Attaching to process 23463, please wait... > > javax.script.ScriptException: TypeError: sapkg.runtime.VM.getVM is not > a function in sa.js at line number 54 > > javax.script.ScriptException: TypeError: sapkg.runtime.VM.getVM is not > a function in sa.js at line number 54 > > Attaching to process 23731, please wait... > > javax.script.ScriptException: TypeError: sapkg.runtime.VM.getVM is not > a function in sa.js at line number 54 > > javax.script.ScriptException: TypeError: sapkg.runtime.VM.getVM is not > a function in sa.js at line number 54 > > java.lang.NullPointerException > > at > jdk.hotspot.agent/sun.jvm.hotspot.tools.StackTrace.run(StackTrace.java > :83) > > at > jdk.hotspot.agent/sun.jvm.hotspot.CommandProcessor$26.doit(CommandProc > essor.java:1073) > > at > jdk.hotspot.agent/sun.jvm.hotspot.CommandProcessor.executeCommand(Comm > andProcessor.java:1966) > > at > jdk.hotspot.agent/sun.jvm.hotspot.CommandProcessor.executeCommand(Comm > andProcessor.java:1936) > > at > jdk.hotspot.agent/sun.jvm.hotspot.CommandProcessor.run(CommandProcesso > r.java:1816) > > at > jdk.hotspot.agent/sun.jvm.hotspot.CLHSDB.run(CLHSDB.java:99) > > at > jdk.hotspot.agent/sun.jvm.hotspot.CLHSDB.main(CLHSDB.java:40) > > at > jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.runCLHSDB(SALauncher.java > :191) > > at > jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.main(SALauncher.java:439) >