This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/12432] New: backtrace() fails with recursive function on 64-bit


http://sourceware.org/bugzilla/show_bug.cgi?id=12432

           Summary: backtrace() fails with recursive function on 64-bit
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: libc
        AssignedTo: drepper.fsp@gmail.com
        ReportedBy: loose@astron.nl


Created attachment 5207
  --> http://sourceware.org/bugzilla/attachment.cgi?id=5207
Test program that demonstrates wrong backtrace on 64-bit

glibc's backtrace() function fails to give a complete backtrace with 64-bit
code when calling a recursive function. A 32-bit executable does produce a
correct backtrace. Using -fno-omit-frame-pointer does not solve the problem for
the 64-bit code.

This problem still exists with current glibc from git. I built glibc from git
at 2011-01-22 and linked the attached program to the freshly built libc. I
tried both static and dynamic linking; both give wrong output.

Output of 32-bit executable:
** 12 **
0   0x80484aa
1   0x8048492
2   0x8048492
3   0x8048492
4   0x8048492
5   0x8048492
6   0x8048492
7   0x8048492
8   0x8048492
9   0x8048492
10  0x804850f
11  0xf75bdc0e

Output of 64-bit executable:
** 2 **
0   0x4005c8
1   0x4005b2

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]