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

runtime/Unsafe/InternalErrorTest.java enters endless loop on Alpine aarch64

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: P3 P3
    • tbd
    • 23
    • hotspot
    • aarch64
    • linux_alpine

      It's related to JDK-8322163 that replaced memset with a for loop on Alpine. JDK-8322163 fixed the test on Alpine x86_64 but it enters endless loop on Alpine aarch64.

      The loop causes SIGBUS to be generated and the signal handler continues to the next instruction. As gcc generates strb with auto-increment on aarch64, the increment will be skipped.

      Thread 2 "java" received signal SIGBUS, Bus error.
      Copy::fill_to_memory_atomic (to=to@entry=0xffffdb004000, size=size@entry=999, value=value@entry=240 '\360') at src/hotspot/share/utilities/copy.cpp:252
      252 *(volatile jbyte*)(dst + off) = fill;
      2: x/i $pc
      => 0xfffff6fefa40 <_ZN4Copy21fill_to_memory_atomicEPvmh+536>: strb w2, [x5], #1

            dcherepanov Dmitry Cherepanov
            dcherepanov Dmitry Cherepanov
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: