United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6932270 Allow Java's ELF symtab reader to use separate debuginfo files
JDK-6932270 : Allow Java's ELF symtab reader to use separate debuginfo files

Details
Type:
Bug
Submit Date:
2010-03-04
Status:
Closed
Updated Date:
2013-02-25
Project Name:
JDK
Resolved Date:
2010-03-24
Component:
hotspot
OS:
linux
Sub-Component:
runtime
CPU:
x86
Priority:
P4
Resolution:
Fixed
Affected Versions:
hs17
Fixed Versions:
hs18 (b01)

Related Reports
Backport:
Backport:
Backport:
Backport:
Relates:
Relates:

Sub Tasks

Description
From https://bugs.openjdk.java.net/show_bug.cgi?id=100126.

   Description  From  Andrew Haley   2010-01-08 08:34:35 PDT

This bug is a clone of https://bugzilla.redhat.com/show_bug.cgi?id=541548

When installed on any GNU/Linux system, jmap crashes with an exception.

The cause of this exception is that Java has its own symbol table reader, and
it does not know that GNU/Linux systems have symbol tables in a separate file
from the object files.

A patch for this is in IcedTea.


$ /usr/lib/jvm/java-openjdk/bin/jmap -heap 14715
Attaching to process ID 14715, please wait...
sun.jvm.hotspot.debugger.NoSuchSymbolException: Could not find symbol
"gHotSpotVMTypeEntryTypeNameOffset" in any of the known library names
(libjvm.so, libjvm_g.so, gamma_g)
        at
sun.jvm.hotspot.HotSpotTypeDataBase.lookupInProcess(HotSpotTypeDataBase.java:388)
        at
sun.jvm.hotspot.HotSpotTypeDataBase.getLongValueFromProcess(HotSpotTypeDataBase.java:369)
        at
sun.jvm.hotspot.HotSpotTypeDataBase.readVMTypes(HotSpotTypeDataBase.java:102)
        at
sun.jvm.hotspot.HotSpotTypeDataBase.<init>(HotSpotTypeDataBase.java:85)
        at sun.jvm.hotspot.bugspot.BugSpotAgent.setupVM(BugSpotAgent.java:568)
        at sun.jvm.hotspot.bugspot.BugSpotAgent.go(BugSpotAgent.java:494)
        at sun.jvm.hotspot.bugspot.BugSpotAgent.attach(BugSpotAgent.java:332)
        at sun.jvm.hotspot.tools.Tool.start(Tool.java:163)
        at sun.jvm.hotspot.tools.HeapSummary.main(HeapSummary.java:39)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at sun.tools.jmap.JMap.runTool(JMap.java:196)
        at sun.tools.jmap.JMap.main(JMap.java:128)
Debugger attached successfully.
sun.jvm.hotspot.tools.HeapSummary requires a java VM process/core!

                                    

Comments
EVALUATION

Add support for reading separate debug info from linux distros, add support for reading SHT_DYNSYM and expose vtables in the mapfile so they appear in the SHT_DYNSYM.
                                     
2010-03-04
EVALUATION

ChangeSet=http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/7de45b5044c3,ChangeRequest=6932270
                                     
2010-03-10



Hardware and Software, Engineered to Work Together