[commited patch] fix ELF segment vs. loadable section check
Chris Demetriou
cgd@google.com
Mon Jul 21 05:08:00 GMT 2008
This patch was originally sent by Sergei Poselenov in
http://sourceware.org/ml/gdb/2007-12/msg00146.html -- I just tested it
and added a changelog entry.
tested by...
* build/check on i686-linux before after (no changes)
* hand-crafted test case which triggered the warning before, verified
that it went away after the fix.
committed as obvious.
chris
--
2008-07-20 Sergei Poselenov <sposelenov@emcraft.com>
Chris Demetriou <cgd@google.com>
* elfread.c (elf_symfile_segments): Fix the check that each loadable
section fits within an ELF segment to handle ELF segments that hit
the end of the address space.
Index: elfread.c
===================================================================
RCS file: /cvs/src/src/gdb/elfread.c,v
retrieving revision 1.72
diff -u -u -p -r1.72 elfread.c
--- elfread.c 14 May 2008 18:14:34 -0000 1.72
+++ elfread.c 21 Jul 2008 05:02:47 -0000
@@ -108,7 +108,7 @@ elf_symfile_segments (bfd *abfd)
for (j = 0; j < num_segments; j++)
if (segments[j]->p_memsz > 0
&& vma >= segments[j]->p_vaddr
- && vma < segments[j]->p_vaddr + segments[j]->p_memsz)
+ && (vma - segments[j]->p_vaddr) < segments[j]->p_memsz)
{
data->segment_info[i] = j + 1;
break;
More information about the Gdb-patches
mailing list