OpenSolaris

Printable Version Enter a New Search
Bug ID 6685125
Synopsis ld/elfdump do not handle ZERO terminator .eh_frame amd64 unwind entry
State 10-Fix Delivered (Fix available in build)
Category:Subcategory compiler:linker
Keywords rtiq_reviewed
Responsible Engineer Rod Evans
Reported Against s10 , snv_74
Duplicate Of
Introduced In solaris_10
Commit to Fix snv_88
Fixed In snv_88
Release Fixed solaris_nevada(snv_88) , solaris_10u7(s10u7_04) (Bug ID:2164955)
Related Bugs 6683583 , 6703683
Submit Date 7-April-2008
Last Update Date 30-November-2009
Description
An OpenSolaris discussion points out that ld(1) is not handling ZERO terminator
unwind entries:

  http://www.opensolaris.org/jive/thread.jspa?threadID=54665&tstart=0 

A Google search uncovered:

   8.1.1. The Common Information Entry Format
   ......
   Length
         A 4 byte unsigned value indicating the length in bytes of the CIE structure,
         not including the Length field itself. If Length contains the value 0xffffffff,
         then the length is contained in the Extended Length field. If Length contains
         the value 0, then this CIE shall be considered a terminator and processing
         shall end.

ld(1) and elfdump(1) are not testing the length for 0, and thus are not terminating
the unwind processing for the associated .eh_frame section.
Work Around
N/A
Comments
N/A