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

Hotspot crashes on linux-sparc after 8189941

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P4
    • 11
    • None
    • hotspot
    • None
    • b11
    • sparc
    • linux

    Description

      When building OpenJDK in fastdebug mode on linux-sparc, the JVM aborts with "illegal load factor":

      glaubitz@deb4g:/srv/glaubitz/hs$ ./build/linux-sparcv9-normal-server-fastdebug/jdk/bin/java --version
      Error occurred during initialization of boot layer
      java.lang.module.FindException: Error reading module: /srv/glaubitz/hs/build/linux-sparcv9-normal-server-fastdebug/jdk/modules/java.sql
      Caused by: java.lang.module.InvalidModuleDescriptorException: Illegal load factor: -1.2197928E-12
      glaubitz@deb4g:/srv/glaubitz/hs$

      Running with debug messages enables, yields:

      glaubitz@deb4g:/srv/glaubitz/hs$ ./build/linux-sparcv9-normal-server-fastdebug/jdk/bin/java -Xlog:init=debug --version
      Error occurred during initialization of boot layer
      java.lang.module.FindException: Error reading module: /srv/glaubitz/hs/build/linux-sparcv9-normal-server-fastdebug/jdk/modules/java.management
              at java.base/jdk.internal.module.ModulePath.readModule(ModulePath.java:349)
              at java.base/jdk.internal.module.ModulePath.scanDirectory(ModulePath.java:283)
              at java.base/jdk.internal.module.ModulePath.scan(ModulePath.java:231)
              at java.base/jdk.internal.module.ModulePath.scanNextEntry(ModulePath.java:189)
              at java.base/jdk.internal.module.ModulePath.find(ModulePath.java:153)
              at java.base/jdk.internal.module.SystemModuleFinders$1.lambda$find$0(SystemModuleFinders.java:214)
              at java.base/java.security.AccessController.doPrivileged(Native Method)
              at java.base/jdk.internal.module.SystemModuleFinders$1.find(SystemModuleFinders.java:215)
              at java.base/jdk.internal.module.ModuleBootstrap.boot(ModuleBootstrap.java:204)
              at java.base/java.lang.System.initPhase2(System.java:1976)
      Caused by: java.lang.module.InvalidModuleDescriptorException: Illegal load factor: -1.2197928E-12
              at java.base/jdk.internal.module.ModuleInfo.invalidModuleDescriptor(ModuleInfo.java:1092)
              at java.base/jdk.internal.module.ModuleInfo.read(ModuleInfo.java:134)
              at java.base/jdk.internal.module.ModulePath.readExplodedModule(ModulePath.java:688)
              at java.base/jdk.internal.module.ModulePath.readModule(ModulePath.java:319)
              ... 9 more
      glaubitz@deb4g:/srv/glaubitz/hs$

      When overriding the loadFactor value in HashMap.java, the JVM eventually crashes with:

      (gdb) bt
      #0 0xffff80010065bb9c in __libc_signal_restore_set (set=0xffff800102680158) at ../sysdeps/unix/sysv/linux/nptl-signals.h:80
      #1 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:48
      #2 0xffff80010065d144 in __GI_abort () at abort.c:79
      #3 0xffff800101a9efbc in os::abort (dump_core=<optimized out>, siginfo=0xffff8001026811e0, context=0xffff8001026811e0)
          at /srv/openjdk/hs/src/hotspot/os/linux/os_linux.cpp:1423
      #4 0xffff800101ebf38c in VMError::report_and_die (id=id@entry=-536870912, message=message@entry=0xffff80010200b260 "fatal error",
          detail_fmt=detail_fmt@entry=0xffff8001020ff850 "LEAF method calling lock?", detail_args=detail_args@entry=0xffff8001026808a8, thread=thread@entry=0xffff80010401a000,
          pc=pc@entry=0x0, siginfo=0x0, context=0x0, filename=0xffff8001020feec8 "/srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp", lineno=985, size=0)
          at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1504
      #5 0xffff800101ec01c8 in VMError::report_and_die (thread=0xffff80010401a000, context=context@entry=0x0,
          filename=filename@entry=0xffff8001020feec8 "/srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp", lineno=lineno@entry=985, message=0xffff80010200b260 "fatal error",
          detail_fmt=detail_fmt@entry=0xffff8001020ff850 "LEAF method calling lock?", detail_args=<optimized out>)
          at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1244
      #6 0xffff80010112e6c8 in report_fatal (file=0xffff8001020feec8 "/srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp", line=line@entry=985,
          detail_fmt=0xffff8001020ff850 "LEAF method calling lock?") at /srv/openjdk/hs/src/hotspot/share/utilities/debug.cpp:250
      #7 0xffff800101ddae10 in Thread::check_for_valid_safepoint_state (this=this@entry=0xffff80010401a000, potential_vm_operation=potential_vm_operation@entry=false)
          at /srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp:985
      #8 0xffff800101df9394 in ThreadsSMRSupport::acquire_stable_list (is_ThreadsListSetter=false, self=0xffff80010401a000)
          at /srv/openjdk/hs/src/hotspot/share/runtime/threadSMR.cpp:629
      #9 ThreadsListHandle::ThreadsListHandle (this=0xffff800102680a48, self=0xffff80010401a000) at /srv/openjdk/hs/src/hotspot/share/runtime/threadSMR.cpp:471
      #10 0xffff800101a91af0 in JavaThreadIteratorWithHandle::JavaThreadIteratorWithHandle (this=0xffff800102680a40)
          at /srv/openjdk/hs/src/hotspot/share/runtime/threadSMR.hpp:307
      #11 os::print_location (st=st@entry=0xffff800102393228 <VMError::log>, x=-256, verbose=verbose@entry=false) at /srv/openjdk/hs/src/hotspot/share/runtime/os.cpp:1113
      #12 0xffff800101ab2b3c in os::print_register_info (st=st@entry=0xffff800102393228 <VMError::log>, context=0xffff8001026811e0)
          at /srv/openjdk/hs/src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp:253
      #13 0xffff800101ebdfac in VMError::report (st=st@entry=0xffff800102393228 <VMError::log>, _verbose=_verbose@entry=true)
          at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:748
      #14 0xffff800101ebf440 in VMError::report_and_die (id=id@entry=11, message=message@entry=0x0, detail_fmt=detail_fmt@entry=0xffff8001020fc870 "%s",
          detail_args=detail_args@entry=0xffff800102680f10, thread=thread@entry=0xffff80010401a000, pc=pc@entry=0xffff80010882c6d8 "\300\\ ", siginfo=0xffff8001026811e0,
          context=0xffff8001026811e0, filename=0x0, lineno=0, size=0) at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1405
      #15 0xffff800101ec00b8 in VMError::report_and_die (thread=thread@entry=0xffff80010401a000, sig=sig@entry=11, pc=pc@entry=0xffff80010882c6d8 "\300\\ ",
          siginfo=siginfo@entry=0xffff8001026811e0, context=context@entry=0xffff8001026811e0, detail_fmt=0xffff8001020fc870 "%s")
          at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1219
      #16 0xffff800101ec0104 in VMError::report_and_die (thread=thread@entry=0xffff80010401a000, sig=sig@entry=11, pc=pc@entry=0xffff80010882c6d8 "\300\\ ",
          siginfo=siginfo@entry=0xffff8001026811e0, context=context@entry=0xffff8001026811e0) at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1225
      #17 0xffff800101ab58b4 in JVM_handle_linux_signal (sig=sig@entry=11, info=info@entry=0xffff8001026811e0, ucVoid=ucVoid@entry=0xffff8001026811e0,
          abort_if_unrecognized=abort_if_unrecognized@entry=1) at /srv/openjdk/hs/src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp:646
      #18 0xffff800101a9c0a0 in signalHandler (sig=<optimized out>, info=0xffff8001026811e0, uc=0xffff8001026811e0) at /srv/openjdk/hs/src/hotspot/os/linux/os_linux.cpp:4396
      ---Type <return> to continue, or q <return> to quit---
      #19 <signal handler called>
      #20 0xffff80010882c6d8 in ?? ()
      Backtrace stopped: previous frame identical to this frame (corrupt stack?)
      (gdb)

      The value for loadFactor is 0xabababab in hex which is most likely result of freed areas being filled with 0xabababab (see: src/hotspot/share/runtime/globals.hpp#L905)

      Attachments

        Activity

          People

            glaubitz John Paul Adrian Glaubitz
            glaubitz John Paul Adrian Glaubitz
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: