JDK-8209189 incorrect for Big Endian (JVM crashes)

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P2
    • 12
    • Affects Version/s: 12
    • Component/s: hotspot
    • None
    • b20

      JVM crashes on Big Endian platforms (PPC64 BE (linux + AIX) and SPARC) were observed while running JCK api tests since JDK-8209189 was pushed.
      Examples:
      dependencyContext.cpp:164 assert(!find_stale_entries()) failed: inconsistent info
      SIGSEGV in DependencyContext::remove_dependent_nmethod(nmethod*,bool)+0x8c

      Root cause seems to be the implementation of IsUnloadingUnion which is incorrect for Big Endian.
      The size of IsUnloadingStruct was observed as 4 bytes on many platforms. In this case, the bit fields and the _value field are disjoint which breaks the intended usage.

            Assignee:
            Erik Ă–sterlund
            Reporter:
            Martin Doerr
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: