[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/27428] Error .eh_frame_hdr refers to overlapping FDEs
From: |
amodra at gmail dot com |
Subject: |
[Bug ld/27428] Error .eh_frame_hdr refers to overlapping FDEs |
Date: |
Thu, 18 Mar 2021 08:14:56 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=27428
Alan Modra <amodra at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |RESOLVED
Resolution|--- |INVALID
--- Comment #3 from Alan Modra <amodra at gmail dot com> ---
Your system 2.18 binutils is so old that it doesn't check for overlapping FDEs.
The check was added with the following commit log, which might help you figure
out what is going wrong. As you are unable to provide a testcase, I'm going to
close this bug as invalid, ie. assume that you are actually generating code
with overlapping addresses for overlays or something like that.
commit ae6c7e33e1510665e8e043eb11a71e59414efbf3
Author: Alan Modra <amodra@gmail.com>
Date: Fri Sep 12 09:35:42 2014 +0930
Test for overflow in eh_frame_hdr entries and for overlapping FDEs
With larger binaries on 64-bit systems, or indeed just binaries that
have a large gap between text and data, it is possible for the
.eh_frame_hdr lookup table entry values to overflow a signed 32-bit
relative offset. It is also a requirement for the glibc FDE lookup
code that only one FDE claim to cover any given address.
* elf-bfd.h (struct eh_frame_array_ent): Add "range".
* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Stash address
range of FDEs to hdr_info->array.
(_bfd_elf_write_section_eh_frame_hdr): Report overflow in
.eh_frame_hdr entries, and overlapping FDEs.
--
You are receiving this mail because:
You are on the CC list for the bug.