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

String.compareTo(Object) crash due to broken RAX

XMLWordPrintable

      String.compareTo is an intrinsics and commonly generated by C2.
      JVM may crash in the AVX2 version of MacroAssembler::string_compare. A classic crashsite is as follows.
       
      # J 1456 C2 java.lang.String.compareTo(Ljava/lang/Object;)I (9 bytes) @ 0x00007ffb0d830235 [0x00007ffb0d830160+0xd5]

      broken instruction:
       vmovdqu ymm0, ymmword ptr [rdi + rax*2] <-- 0x00007ffb0d830235

      RAX=0xffffffff00000036 indicates that it has been corrupted.

      We also observed the same problem in # J 9048 C2 google.common.collect.RegularImmutableSortedSet.contains(Ljava/lang/Object;)Z (21 bytes).

      This problem is hard to reproduce.

            Unassigned Unassigned
            xliu Xin Liu
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: