[Bug 206899] [ld-elf] core dump when linking against x11/nvidia-driver's libGL.so and another library that links against libthr.so

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Feb 3 19:20:53 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=206899

            Bug ID: 206899
           Summary: [ld-elf] core dump when linking against
                    x11/nvidia-driver's libGL.so and another library that
                    links against libthr.so
           Product: Base System
           Version: 10.2-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: dbn at FreeBSD.org
                CC: freebsd-amd64 at FreeBSD.org
                CC: freebsd-amd64 at FreeBSD.org

I believe this to be the root cause for bug #205149.  I will be committing a
work-around that will fix that bug however the underlying issue still remains.  

I'm not sure if this is a bug with ld-elf or x11/nvidia-driver however given
that this is not an issue with Linux I am opting for the former.  

I think the best wau to explain the bug is with a (reproducable) demonstration:

> sudo pkg install -y nvidia-driver > /dev/null
> touch libtest.c
> cc -shared -o libtest.so -lthr libtest.c
> echo 'int main(int argc, char **argv) { return 0; }' > test.c
> cc -o test -L/usr/local/lib -L. -ltest -lGL test.c
> env LD_LIBRARY_PATH=. ./test
Segmentation fault (core dumped)
> gdb test test.core 
GNU gdb 6.1.1 [FreeBSD]
<snip/>
(gdb) bt
#0  0x000000080060b2a2 in _rtld_is_dlopened () from /libexec/ld-elf.so.1
#1  0x0000000800604c8d in _r_debug_postinit () from /libexec/ld-elf.so.1
#2  0x000000080060246d in .text () from /libexec/ld-elf.so.1
#3  0x0000000802d3a365 in _nv003glcore () from
/usr/local/lib/libnvidia-glcore.so.1
#4  0x000000080299e690 in _nv023glcore () from
/usr/local/lib/libnvidia-glcore.so.1
#5  0x0000000802d1effc in _nv015glcore () from
/usr/local/lib/libnvidia-glcore.so.1
#6  0x0000000800aa64eb in glXCreateNewContext () from /usr/local/lib/libGL.so.1
#7  0x0000000800a6ee5a in .init () from /usr/local/lib/libGL.so.1
#8  0x0000000800604a9f in r_debug_state () from /libexec/ld-elf.so.1
#9  0x00000008006040ee in __tls_get_addr () from /libexec/ld-elf.so.1
#10 0x0000000800602439 in .text () from /libexec/ld-elf.so.1
#11 0x0000000000000000 in ?? ()

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list