bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/22048] Incorrect .eh_frame section in libc.so


From: amodra at gmail dot com
Subject: [Bug ld/22048] Incorrect .eh_frame section in libc.so
Date: Thu, 31 Aug 2017 02:23:59 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=22048

--- Comment #1 from Alan Modra <amodra at gmail dot com> ---
For my latest x86_64 glibc build, I see
readelf: Warning: Invalid CIE pointer 0x00000014 in FDE at 0x021004
readelf: Warning: Invalid length 0x0c000000 in FDE at 0x021009
readelf: Warning: Invalid CIE pointer 0x48000210 in FDE at 0x021009

A map file shows

.eh_frame       0x0000000000181398    0x21274
 *(.eh_frame)
 .eh_frame      0x0000000000181398       0x40
/home/alan/build/glibc/csu/abi-note.o
 .eh_frame      0x00000000001813d8       0x18
/home/alan/build/glibc/csu/abi-note.o
                                         0x30 (size before relaxing)
 .eh_frame      0x00000000001813f0    0x20fa8
/home/alan/build/glibc/libc_pic.os
                                      0x2af10 (size before relaxing)
 .eh_frame      0x00000000001a2398        0x8
/home/alan/build/glibc/elf/sofini.os
 *fill*         0x00000000001a23a0        0x0 
 .eh_frame      0x00000000001a23a0       0x18
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(_popcountsi2.o)
                                         0x30 (size before relaxing)
 .eh_frame      0x00000000001a23b8       0x60
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(addtf3.o)
                                         0x78 (size before relaxing)
 .eh_frame      0x00000000001a2418       0x50
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(divtf3.o)
                                         0x68 (size before relaxing)
 .eh_frame      0x00000000001a2468       0x50
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(multf3.o)
                                         0x68 (size before relaxing)
 .eh_frame      0x00000000001a24b8       0x60
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(subtf3.o)
                                         0x78 (size before relaxing)
 .eh_frame      0x00000000001a2518       0x28
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(unordtf2.o)
                                         0x40 (size before relaxing)
 .eh_frame      0x00000000001a2540       0x18
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(floatsitf.o)
                                         0x30 (size before relaxing)
 .eh_frame      0x00000000001a2558       0x38
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(getf2.o)
                                         0x50 (size before relaxing)
 .eh_frame      0x00000000001a2590       0x40
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(letf2.o)
                                         0x58 (size before relaxing)
 .eh_frame      0x00000000001a25d0       0x28
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(eqtf2.o)
                                         0x40 (size before relaxing)
 .eh_frame      0x00000000001a25f8       0x14
/usr/lib/gcc/x86_64-linux-gnu/4.9/libgcc.a(sfp-exceptions.o)
                                         0x30 (size before relaxing)
 *(.eh_frame.*)

So what is at offset 0x21004?  /home/alan/build/glibc/elf/sofini.os by the look
of it.

readelf -wf /home/alan/build/glibc/elf/sofini.os
Contents of the .eh_frame section:

00000000 ZERO terminator

What is that zero terminator doing in the middle of glibc's .eh_frame?

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]