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

[TESTBUG] Wrong weakCompareAndSet assumption in UnsafeIntrinsicsTest

XMLWordPrintable

    • b17
    • ppc

        The test UnsafeIntrinsicsTest can fail on PPC64 when testing new GCs. This platform has an optimized implementation of weakCompareAndSet.

        According to [1], weakCompareAndSet is allowed to fail sporadically. Such sporadic failures are observable on PPC64.
        [2] mentions memory contention as typical failure reason, but it's not the only possible reason. E.g., the OS can interrupt the Java Thread and the CPU can lose the reservation which also leads to such a failure. In addition, GC can access the same cache line concurrently, which is also a possible failure reason.

        [1] https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReference.html
        [2] https://docs.oracle.com/javase/9/docs/api/java/lang/invoke/VarHandle.html#weakCompareAndSet-java.lang.Object...-

              mdoerr Martin Doerr
              mdoerr Martin Doerr
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: