jhsdb jstack cannot work correctly
Yasumasa Suenaga
yasuenag at gmail.com
Thu Aug 4 13:25:39 UTC 2016
Hi all,
> 2. Normal mode cannot work
> "jhsdb jstack" should work as normal mode without being added --mixed option.
> However, this command always works as mixed mode.
Does someone work for this issue?
If not, I will file it to JBS.
Thanks,
Yasumasa
On 2016/08/03 21:20, Yasumasa Suenaga wrote:
> Hi all,
>
> I use "jhsdb jstack" command in JDK 9 EA b129.
> But it does not seem to work fine.
>
> I encountered two problems:
>
> 1. AssertionFailure: illegal bci
> 2. Normal mode cannot work
>
>
> 1. AssertionFailure: illegal bci
> I saw error stack as below with JDK 9 EA b129 Linux x64:
> -------------------
> 0x00007fe06bd270c2 * java.lang.Object.wait(long) bci:-520544688 (Interpreted frame)
> 0x00007fe06bd1a443 sun.jvm.hotspot.utilities.AssertionFailure: illegal bci
> at sun.jvm.hotspot.utilities.Assert.that(jdk.hotspot.agent at 9-ea/Assert.java:32)
> at sun.jvm.hotspot.oops.ConstMethod.getLineNumberFromBCI(jdk.hotspot.agent at 9-ea/ConstMethod.java:297)
> at sun.jvm.hotspot.oops.Method.getLineNumberFromBCI(jdk.hotspot.agent at 9-ea/Method.java:282)
> at sun.jvm.hotspot.tools.PStack.getJavaNames(jdk.hotspot.agent at 9-ea/PStack.java:239)
> at sun.jvm.hotspot.tools.PStack.run(jdk.hotspot.agent at 9-ea/PStack.java:112)
> -------------------
>
> jhsdb can parse compiled frame correctly. It seems to be a problem for interpreter frame only.
> What is the cause of this problem?
> interpretedVFrame in HotSpot has changed the location to store BCP?
>
>
> 2. Normal mode cannot work
> "jhsdb jstack" should work as normal mode without being added --mixed option.
> However, this command always works as mixed mode.
> I think we can fix as below:
> -------------------
> diff -r 5acd2b561936 src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/JStack.java
> --- a/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/JStack.java Tue Aug 02 20:55:27 2016 -0700
> +++ b/src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/JStack.java Wed Aug 03 21:18:57 2016 +0900
> @@ -68,6 +68,10 @@
> }
>
> public void runWithArgs(String... args) {
> + // We should recover these mode to default value.
> + mixedMode = false;
> + concurrentLocks = false;
> +
> int used = 0;
> for (int i = 0; i < args.length; i++) {
> if (args[i].equals("-m")) {
> -------------------
>
>
> Has someone worked for them?
> If not so, and patch of 2. is correct, I file it to JBS and upload webrev.
>
>
> Thanks,
>
> Yasumasa
>
>
More information about the serviceability-dev
mailing list