OpenSolaris

Printable Version Enter a New Search
Bug ID 6237063
Synopsis request extension to dl* family to provide segment bounds information
State 10-Fix Delivered (Fix available in build)
Category:Subcategory compiler:linker
Keywords
Responsible Engineer Rod Evans
Reported Against snv_11
Duplicate Of
Introduced In
Commit to Fix snv_109
Fixed In snv_109
Release Fixed solaris_nevada(snv_109)
Related Bugs 6686372 , 6798857 , 6809293 , 6237082
Submit Date 7-March-2005
Last Update Date 25-February-2009
Description
The information currently provided by dladdr() does not enable
a profiling application to associate a code address with the ELF
object containing the address.  Currently, dladdr() provides
only the base address of the ELF object's first memory segment.
The upper bound of the object's (primary) text segment is not
provided, nor is any information provided regarding the object's
other memory segments.

Segment bounds information can be obtained by reading procfs, but
the cost of this operation is significant as it entails several
system calls (open, read, close, possibly additional reads
depending on the size of /proc/self/map, etc.).  This cost
may have a significant impact on the usability of profiling
tools, particularly when profiling MT applications.

This RFE requests an extension to dladdr1() to return a map
of the address bounds of the ELF object's segments, which would
enable tools to access this information efficiently without
having to reconstruct the information via procfs.

 xxxxx@xxxxx.com 2005-03-07 20:26:42 GMT
Work Around
N/A
Comments
N/A