abrt 1.1.1 detected a crash. architecture: x86_64 Attached file: backtrace cmdline: /lib64/ld-linux-x86-64.so.2 --verify /lib/modules/2.6.33.5-124.fc13.x86_64/vdso/vdso.so comment: Happened during a "rpmlint -a" run. component: glibc crash_function: elf_get_dynamic_info executable: /lib64/ld-2.12.so global_uuid: c5cbb2086a6783eea7e87d783c3333c2df465165 kernel: 2.6.33.5-124.fc13.x86_64 package: glibc-2.12-2 rating: 4 reason: Process /lib64/ld-2.12.so was killed by signal 11 (SIGSEGV) release: Fedora release 13 (Goddard) How to reproduce ----- 1. /lib64/ld-linux-x86-64.so.2 --verify /lib/modules/2.6.33.5-124.fc13.x86_64/vdso/vdso.so
Created attachment 425746 [details] File: backtrace
This is an invalid object, .dynamic must be writable.
Regardless of the input, why isn't a segfault a bug?
Why would it be a bug? There are many ways how to get a segfault with a broken library or broken binary. Just don't do that. If ld.so checks for everything, the startup of sane programs will be slowed down considerably.
If the crash for some reason cannot be prevented/fixed in ld.so, do you think it should be done in ldd? FWIW that's what rpmlint uses.
*** Bug 727705 has been marked as a duplicate of this bug. ***
For the record, it crashed when using rpmlint on the kernel package, and the tests run ldd on all files that match some pattern and that are identified as shared library : $ LC_ALL=C ldd /lib/modules/3.7.2-201.fc18.x86_64/vdso/vdso.so ldd: exited with unknown exit code (139) $ file /lib/modules/3.7.2-201.fc18.x86_64/vdso/vdso.so /lib/modules/3.7.2-201.fc18.x86_64/vdso/vdso.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x4456e2d6d3871424aa4bc22deeb20470b941c63c, stripped