cvs commit: src/libexec/rtld-elf Makefile

Marcel Moolenaar xcllnt at mac.com
Thu May 17 01:34:40 UTC 2007


On May 16, 2007, at 7:34 PM, Alexander Kabaev wrote:

> On Wed, 16 May 2007 23:24:15 +0000 (UTC)
> Marcel Moolenaar <marcel at FreeBSD.org> wrote:
>
>> marcel      2007-05-16 23:24:15 UTC
>>
>>   FreeBSD src repository
>>
>>   Modified files:
>>     libexec/rtld-elf     Makefile
>>   Log:
>>   Don't enable symbol versioning on ia64 for now. It causes
>>   symbol lookup failures that later result in null-pointer
>>   dereferences. This needs looking into, but since we're
>>   close to release it's possible that it's not resolved before
>>   that time.
>>
>>   Revision  Changes    Path
>>   1.41      +2 -0      src/libexec/rtld-elf/Makefile
>>
>> http://cvsweb.FreeBSD.org/src/libexec/rtld-elf/Makefile.diff? 
>> r1=1.40&r2=1.41
>
> I definitely would prefer a detailed bug report instead of such
> unilateral actions taken by you without consulting anyone.

A sense of responsibility...
Ok, then:

Any and all shared linked executable dump core with a SIGSEGV.
This is caused by a null-pointer dereference in path_enumerate()
when it tries to call the path_enum_proc typed callback. That
argument is NULL when called from search_library_path(), when
given try_library_path as the callback function.

When rtld-elf is compiled without symbol versioning this works,
which seems to indicate that the introduction of symbol versioning
results in a lookup failure.

-- 
Marcel Moolenaar
xcllnt at mac.com




More information about the cvs-all mailing list