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

UnmappedAddressException while attaching to process or core when CDS is used

XMLWordPrintable

      SACoreAttachingConnector.attach throws UnmappedAddressException if core was generated for process that use CDS:

      > cat Test.java
      public class Test {
          public static void main(String args[]) {
              while (true) {}
          }
      }
      > $JAVA_HOME/bin/java -Xshare:dump
      > $JAVA_HOME/bin/java -Xshare:on Test &
      > kill -11 $!
      > $JAVA_HOME/bin/jstack $JAVA_HOME/bin/java core

      Attaching to core core from executable jdk1.8.0/bin/java, please wait...
      Debugger attached successfully.
      Server compiler detected.
      JVM version is 25.0-b70
      Deadlock Detection:

      sun.jvm.hotspot.debugger.UnmappedAddressException: 800026c08
      at sun.jvm.hotspot.debugger.PageCache.checkPage(PageCache.java:208)
      at sun.jvm.hotspot.debugger.PageCache.getData(PageCache.java:63)
      at sun.jvm.hotspot.debugger.DebuggerBase.readBytes(DebuggerBase.java:225)
      at sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.readCInteger(LinuxDebuggerLocal.java:498)
      at sun.jvm.hotspot.debugger.linux.LinuxAddress.getCIntegerAt(LinuxAddress.java:69)
      at sun.jvm.hotspot.oops.CIntField.getValue(CIntField.java:49)
      at sun.jvm.hotspot.oops.CIntField.getValue(CIntField.java:46)
      at sun.jvm.hotspot.utilities.GenericArray.length(GenericArray.java:46)
      at sun.jvm.hotspot.oops.InstanceKlass.getAllFieldsCount(InstanceKlass.java:335)
      at sun.jvm.hotspot.oops.InstanceKlass.<init>(InstanceKlass.java:119)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
      at sun.jvm.hotspot.runtime.VMObjectFactory.newObject(VMObjectFactory.java:58)
      at sun.jvm.hotspot.runtime.VirtualBaseConstructor.instantiateWrapperFor(VirtualBaseConstructor.java:104)
      at sun.jvm.hotspot.oops.Metadata.instantiateWrapperFor(Metadata.java:68)
      at sun.jvm.hotspot.oops.Oop.getKlassForOopHandle(Oop.java:211)
      at sun.jvm.hotspot.oops.ObjectHeap.newOop(ObjectHeap.java:251)
      at sun.jvm.hotspot.runtime.JavaThread.getThreadObj(JavaThread.java:335)
      at sun.jvm.hotspot.runtime.JavaThread.getCurrentParkBlocker(JavaThread.java:387)
      at sun.jvm.hotspot.runtime.DeadlockDetector.print(DeadlockDetector.java:82)
      at sun.jvm.hotspot.runtime.DeadlockDetector.print(DeadlockDetector.java:39)
      at sun.jvm.hotspot.tools.StackTrace.run(StackTrace.java:62)
      at sun.jvm.hotspot.tools.StackTrace.run(StackTrace.java:45)
      at sun.jvm.hotspot.tools.JStack.run(JStack.java:66)
      at sun.jvm.hotspot.tools.Tool.startInternal(Tool.java:260)
      at sun.jvm.hotspot.tools.Tool.start(Tool.java:223)
      at sun.jvm.hotspot.tools.Tool.execute(Tool.java:118)
      at sun.jvm.hotspot.tools.JStack.main(JStack.java:92)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:483)
      at sun.tools.jstack.JStack.runJStackTool(JStack.java:140)
      at sun.tools.jstack.JStack.main(JStack.java:106)

      Issue could be reproduced with latest 8 and 9 builds. I was able to reproduce it starting from 8 FCS, did not try previous trains yet.

            jgeorge Jini George (Inactive)
            fzhinkin Filipp Zhinkin
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: