Bug 481490

Summary: .symtab _SDA_BASE_ has bogus address.
Product: Red Hat Enterprise Linux 4 Reporter: Jan Kratochvil <jan.kratochvil>
Component: glibcAssignee: Jakub Jelinek <jakub>
Status: CLOSED NOTABUG QA Contact: BaseOS QE <qe-baseos-auto>
Severity: low Docs Contact:
Priority: low    
Version: 4.7CC: pmuller
Target Milestone: rc   
Target Release: ---   
Hardware: ppc   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-25 20:19:51 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
gdb-6.3.0.0-1.160.el4.src/gdb-6.3/gdb/testsuite/gdb.mi/basics for ppc none

Description Jan Kratochvil 2009-01-25 16:48:14 UTC
Created attachment 329942 [details]
gdb-6.3.0.0-1.160.el4.src/gdb-6.3/gdb/testsuite/gdb.mi/basics for ppc

Description of problem:
GDB testsuite reported a regression on:
gdb.mi/mi2-disassemble.exp: data-disassemble range assembly mixed

It was due to unfortunate prelink address and a bogus _SDA_BASE_ address:
http://porkchop.devel.redhat.com/brewroot/packages/glibc/2.3.4/2.41.el4_7.1/ppc/glibc-2.3.4-2.41.el4_7.1.ppc.rpm
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
  [21] .bss              NOBITS          00028a60 018960 000030 00  WA  0   0  4
0x00028a60 + 0x000030 == 0x28a90
  [18] .sdata            PROGBITS        00028530 018530 000430 00  WA  0   0  8
Symbol table '.symtab' contains 723 entries:
   600: 00030530     0 OBJECT  LOCAL  DEFAULT   18 _SDA_BASE_

0x30530 > 0x28a90 - being the end of file - which should not happen.
In fact it should not be out of the range of its section number 18.

Version-Release number of selected component (if applicable):
glibc-2.3.4-2.41.el4_7.1.ppc (4.7.z)
glibc-2.3.4-2.43.ppc (4.8?)
glibc-2.3.4-2.41.ppc 4.7

How reproducible:
Depending on prelink but it happened both on ppcp-4as-7-v1.lab.bos.redhat.com (RHEL-4.7.z ppc) and http://rhts.redhat.com/cgi-bin/rhts/recipes.cgi?id=148779 (RHEL4-U8-re20090123.nightly ppc).

Steps to Reproduce:
Prelink /lib/ld.so.1 to 0x0ffd0000
cat >cmd <<EOH
# 0x1000053c is $pc after `start'
info line *0x1000053c
start
info line *0x1000053c
q
EOH
gdb -nx -x ./cmd gdb-6.3.0.0-1.160.el4.src/gdb-6.3/gdb/testsuite/gdb.mi/basics

Actual results:
Line 54 of "./gdb.mi/basics.c" starts at address 0x1000053c <main+20> and ends at 0x10000558 <main+48>.
Breakpoint 1 at 0x1000053c: file ./gdb.mi/basics.c, line 54.
main () at ./gdb.mi/basics.c:54
54	  callee1 (2, "A string argument.", 3.5);
Line 54 of "./gdb.mi/basics.c" is at address 0x1000053c <main+20> but contains no code.

Expected results:
Line 54 of "./gdb.mi/basics.c" starts at address 0x1000053c <main+20> and ends at 0x10000558 <main+48>.
Breakpoint 1 at 0x1000053c: file ./gdb.mi/basics.c, line 54.
main () at ./gdb.mi/basics.c:54
54	  callee1 (2, "A string argument.", 3.5);
Line 54 of "./gdb.mi/basics.c" starts at address 0x1000053c <main+20> and ends at 0x10000558 <main+48>.

Additional info:
_SDA_BASE_ is neither on ppc64 nor other arches.
It is also not present in RHEL-5.x.
Submitting more for a reference for GDB testsuite results and elfutils files validity checking info source.
The problem affects only debugging (GDB) as _SDA_BASE_ is just in `.symtab'.

Comment 1 Jan Kratochvil 2009-01-25 20:19:51 UTC
Explained by Roland in Bug 481491 Comment 1 it is NOTABUG and intentional.
It is a GDB Bug instead, going to fix it.