Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8264279

Shenandoah: Missing handshake after JDK-8263427

    XMLWordPrintable

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b16

      Description

      The test failed on Mar. 25 nightly.

      # Internal Error (/home/jenkins/workspace/nightly/jdk-jdk/src/hotspot/share/classfile/javaClasses.cpp:745), pid=20943, tid=21063
      # assert(java_string->klass() == vmClasses::String_klass()) failed: must be java_string
      #
      # JRE version: OpenJDK Runtime Environment (17.0) (fastdebug build 17-internal+0-adhoc.jenkins.jdk-jdk)
      # Java VM: OpenJDK 64-Bit Server VM (fastdebug 17-internal+0-adhoc.jenkins.jdk-jdk, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, shenandoah gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0xd7155e] java_lang_String::equals(oop, unsigned short const*, int)+0x6e
      #

      Disassembly code:

      push %rbp
       mov %rsp,%rbp
       push %r15
       push %r14
       push %r13
       push %r12
       mov %rdi,%r14
       push %rbx
       mov %rsi,%r15
       sub $0x48,%rsp
       mov %edx,-0x58(%rbp)
       lea 0x142857b(%rip),%rdx # 0x7ffff7182a8c <UseCompressedClassPointers>
       mov (%rdi),%rax
       cmpb $0x0,(%rdx)
       jne 0x7ffff5d5a700 <java_lang_String::equals(oop, unsigned short const*, int)+528>
       mov 0x8(%rax),%r12
       lea 0x1464b18(%rip),%rax # 0x7ffff71bf040 <_ZN9vmClasses8_klassesE>
       mov 0x8(%rax),%rbx
       test %rbx,%rbx
       je 0x7ffff5d5a729 <java_lang_String::equals(oop, unsigned short const*, int)+569>
       cmp %r12,%rbx <<== java_string.klass == VMClasses::String_Klass()
       je 0x7ffff5d5a56d <java_lang_String::equals(oop, unsigned short const*, int)+125>
       lea 0x139bcc7(%rip),%rax # 0x7ffff70f6208 <g_assert_poison>
       lea 0xd181ea(%rip),%rcx # 0x7ffff6a72732
       lea 0xd28059(%rip),%rdx # 0x7ffff6a825a8
       lea 0xd27d2a(%rip),%rdi # 0x7ffff6a82280
        mov $0x2e9,%esi
        mov (%rax),%rax
        movb $0x58,(%rax)
        xor %eax,%eax


      It looks like rax has corrupted oop

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              zgu Zhengyu Gu
              Reporter:
              zgu Zhengyu Gu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: