Patch RFC: Use internal qsort function in libbacktrace
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Fri Mar 7 12:12:00 GMT 2014
Hi Paolo,
> On 03/05/2014 04:34 AM, Ian Lance Taylor wrote:
>> The GNU glibc qsort function will call malloc in some cases. That makes
>> it unsuitable for libbacktrace, which is intended to work when called
>> from a signal handler. This patch changes libbacktrace to use an
>> internal qsort function.
>>
>> I'm posting this for comments in case anybody sees anything wrong with
>> the implementation. I'll commit it in a day or two if I don't hear
>> anything.
>>
>> Bootstrapped and ran libbacktrace and Go tests on
>> x86_64-unknown-linux-gnu.
> Sorry if I missed some messages or I'm just confused, but today I'm seeing
> a lot of regressions all of the same form:
>
> libsanitizer/asan/.libs/libasan.so: undefined reference to `backtrace_qsort'
>
> Confirmed in eg:
>
> http://gcc.gnu.org/ml/gcc-testresults/2014-03/msg00399.html
>
> Any idea what's up?
I suspect the following patch (yet untested) will fix this:
2014-03-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES):
Add ../../libbacktrace/sort.c.
* libbacktrace/Makefile.in: Regenerate.
* libbacktrace/backtrace-rename.h (backtrace_qsort): Define.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: libsanitizer-backtrace_qsort.patch
Type: text/x-patch
Size: 1142 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140307/70fbcf05/attachment.bin>
-------------- next part --------------
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Gcc-patches
mailing list