You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Gregory Shimansky (JIRA)" <ji...@apache.org> on 2008/01/25 12:16:34 UTC

[jira] Commented: (HARMONY-5422) [drlvm][jit] intermittent VM crash in api.zip.ZlibTest from the reliability suite

    [ https://issues.apache.org/jira/browse/HARMONY-5422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12562443#action_12562443 ] 

Gregory Shimansky commented on HARMONY-5422:
--------------------------------------------

I would try to disassemble earlier from RIP. Stepping back just 14 bytes is often not enough for disassembler to pick up correct instructions beginnings, so it can show bad instructions.

> [drlvm][jit] intermittent VM crash in api.zip.ZlibTest from the reliability suite
> ---------------------------------------------------------------------------------
>
>                 Key: HARMONY-5422
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5422
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Linux x86_64
>            Reporter: Pavel Rebriy
>
> I've executed reliability ZlibTest on 614799 debug revision on Linux x86_64 platform.
> The result was an intermittent crash (1 crash from 20 runs) with the following diagnostic:
> $ i=1; res=104; while [ $res -eq 104 ]; do /nfs/ims/home/psrebriy/work/git-master/build/lnx_em64t_gcc_debug/deploy/jdk/jre/bin/java -classpath /nfs/ims/proj/drl/mrt2/users/psrebriy/bti2/build/checkouts/reliability/classes org.apache.harmony.test.reliability.share.ReliabilityTestStarter -testReliabilityMode longrunning -testTimeOut 1200 -testClassName org.apache.harmony.test.reliability.api.zip.ZlibTest 10 /nfs/ims/proj/drl/mrt2/users/psrebriy/bti2/tests/reliability/src/java/org/apache/harmony/test/reliability/api/zip/auxiliary 30000 Test.out 10 > out.Zlib.debug; res=$?; i=$((i+1)); echo --- $i ----; done
> Illegal instruction (core dumped)
> The native stacks are the following:
> 1:
> (gdb) where
> #0  0x00002aaabe2a8a78 in ?? ()
> #1  0xdeadbeefdeadbeef in ?? ()
> #2  0xdeadbeefdeadbeef in ?? ()
> #3  0xdeadbeefdeadbeef in ?? ()
> #4  0xdeadbeefdeadbeef in ?? ()
> #5  0xdeadbeefdeadbeef in ?? ()
> #6  0xdeadbeefdeadbeef in ?? ()
> #7  0xdeadbeefdeadbeef in ?? ()
> #8  0xdeadbeefdeadbeef in ?? ()
> #9  0x00000000deadbeef in ?? ()
> #10 0x0000000000000000 in ?? ()
> (gdb) x /20i $rip-14
> 0x2aaabe2a8a7a: in     (%dx),%al
> 0x2aaabe2a8a7b: add    %al,(%rax)
> 0x2aaabe2a8a7d: add    %al,(%rax)
> 0x2aaabe2a8a7f: add    %dl,0xffffffffc7909090(%rax)
> 0x2aaabe2a8a85: test   %ebp,%esp
> 0x2aaabe2a8a87: std    
> 0x2aaabe2a8a88: (bad)                              <<<<<<<<<<<<<<<<<<<<<<< Illegal instruction
> 0x2aaabe2a8a89: incl   (%rax)
> 0x2aaabe2a8a8b: add    %al,(%rax)
> 0x2aaabe2a8a8d: add    %cl,0xffffffffffffff83(%rax)
> 0x2aaabe2a8a90: in     (%dx),%al
> 0x2aaabe2a8a91: or     %cl,0xffffffffffffffba(%rax)
> 0x2aaabe2a8a94: fsubrl 0x2aaaaab8(%rcx)
> 0x2aaabe2a8a9a: add    %al,(%rax)
> 0x2aaabe2a8a9c: rex64 callq  *%rdx
> 0x2aaabe2a8a9f: add    $0x8,%rsp
> 0x2aaabe2a8aa3: cmpl   $0x0,0x8(%rax)
> 0x2aaabe2a8aa7: je,pt  0x2aaabe2a8ac3
> 0x2aaabe2a8aae: sub    $0x8,%rsp
> 0x2aaabe2a8ab2: mov    $0x2aaaac63a800,%rsi
> 2:
> (gdb) where
> #0  0x00002aaabe2a8a78 in ?? ()
> #1  0xdeadbeefdeadbeef in ?? ()
> #2  0xdeadbeefdeadbeef in ?? ()
> #3  0xdeadbeefdeadbeef in ?? ()
> #4  0xdeadbeefdeadbeef in ?? ()
> #5  0xdeadbeefdeadbeef in ?? ()
> #6  0xdeadbeefdeadbeef in ?? ()
> #7  0xdeadbeefdeadbeef in ?? ()
> #8  0xdeadbeefdeadbeef in ?? ()
> #9  0x00000000deadbeef in ?? ()
> #10 0x0000000000000000 in ?? ()
> (gdb) x /20i 0x2aaabe2a8a6c
> 0x2aaabe2a8a6c: stos   %al,%es:(%rdi)
> 0x2aaabe2a8a6d: sub    (%rax),%al
> 0x2aaabe2a8a6f: add    %dl,0xffffffffc7909090(%rax)
> 0x2aaabe2a8a75: test   %ebp,%esp
> 0x2aaabe2a8a77: std    
> 0x2aaabe2a8a78: (bad)                        <<<<<<<<<<<<<<<<<<<<<< Illegal instruction
> 0x2aaabe2a8a79: incl   (%rax)
> 0x2aaabe2a8a7b: add    %al,(%rax)
> 0x2aaabe2a8a7d: add    %cl,0xffffffffffffff83(%rax)
> 0x2aaabe2a8a80: in     (%dx),%al
> 0x2aaabe2a8a81: or     %cl,0xffffffffffffffba(%rax)
> 0x2aaabe2a8a84: fsubrl 0x2aaaaab8(%rcx)
> 0x2aaabe2a8a8a: add    %al,(%rax)
> 0x2aaabe2a8a8c: rex64 callq  *%rdx
> 0x2aaabe2a8a8f: add    $0x8,%rsp
> 0x2aaabe2a8a93: cmpl   $0x0,0x8(%rax)
> 0x2aaabe2a8a97: je,pt  0x2aaabe2a8ab3
> 0x2aaabe2a8a9e: sub    $0x8,%rsp
> 0x2aaabe2a8aa2: mov    $0x2aaaac63a800,%rsi
> 0x2aaabe2a8aac: rex64 callq  *%rsi
> It could be a problem with JIT'ed encode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.