libunwind-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Libunwind-devel] Bug fixes in libunwind git = make another "release"?


From: Evan Jones
Subject: [Libunwind-devel] Bug fixes in libunwind git = make another "release"?
Date: Fri, 18 Mar 2011 08:31:06 -0400
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.14) Gecko/20110223 Thunderbird/3.1.8

Short version: I think I've run into a SEGFAULT bug with the 0.99 release version that does not occur with the latest git version. Maybe it is time to do another "release" so that distributions pick up the bug fixes? The last release was almost 2 years ago.


Long version:

I've been using Google's profiler extensively, which makes use of libunwind. I recently hit a strange bug where one of my programs would segfault somewhere in libunwind if built without optimization, but not if it was built with -Os or -O. The Google perftools developers suggested that this was likely a libunwind bug.

Thus, I went and grabbed the latest GIT version of the code to see if I could reproduce the bug. However, when using this version of the library, the bug disappears.

I'm assuming this means that I did hit a bug that has since been fixed? It would be excellent if this fix could be provided by my distribution. However, Debian distributes libunwind-0.99 which was released almost 2 years ago. I'm assuming there have been some bug fixes since then?

Thanks,

Evan Jones


PS. In case you are interested the SEGFAULT bug I was seeing looked like the following:

Program terminated with signal 11, Segmentation fault.
#0  0x00007f2bc6b86d52 in ?? () from /usr/lib/libunwind.so.7
#1  0x00007f2bc6b84c75 in ?? () from /usr/lib/libunwind.so.7
#2  0x00007f2bc6b8516a in ?? () from /usr/lib/libunwind.so.7
#3  0x00007f2bc6b85409 in ?? () from /usr/lib/libunwind.so.7
#4  0x00007f2bc6b876ea in _ULx86_64_step () from /usr/lib/libunwind.so.7
#5 0x0000000000414fac in GetStackTraceWithContext ( result=<value optimized out>, max_depth=63,
    skip_count=<value optimized out>, ucp=<value optimized out>)
    at src/stacktrace_libunwind-inl.h:114
#6  0x0000000000412692 in CpuProfiler::prof_handler (
    sig=<value optimized out>, signal_ucontext=0x7f2b9f7d5780,
    cpu_profiler=<value optimized out>) at src/profiler.cc:280
#7  0x000000000041344b in ProfileHandler::SignalHandler (sig=27,
    sinfo=0x7f2b9f7d58b0, ucontext=0x7f2b9f7d5780)
    at src/profile-handler.cc:439
#8  <signal handler called>
#9 0x00007f2bc6917dd2 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char) () from /usr/lib/libstdc++.so.6
#10 0x000000000040ffe4 in RandomGenerator::ASCIIString (this=0x7f2bbc966d80,
    length=1801) at generators/randomgenerator.cc:60
#11 0x00000000004030fe in generateValue (keysize=8, randomVal=1623506531,
    rng=...) at realdriver.cc:98
(... more stack frames from my program ...)

--
http://evanjones.ca/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]