This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB 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]

More bad backtraces through nanosleep


This is a little unfortunate...

Glibc with NPTL uses DWARF-2 unwind information to describe syscall
wrappers, because the NPTL implementation of cancellation uses dwarf2
unwinding.  However, glibc with LinuxThreads does not.  So if you're running
a multi-threaded LinuxThreads application, when we hit a syscall we're
likely to get completely lost.  We can't reasonably expect GDB's prologue
unwinder to figure out nanosleep; the function has no prologue, and then
pushes things onto the stack inside CENABLE/CDISABLE.

Libc folks, would there be any disadvantages besides space to adding unwind
info to the cancellable syscall wrappers in LT also?  How would you feel
about such a patch?

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


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