Comment 38 for bug 429003

Revision history for this message
Pauli Virtanen (pauli-virtanen) wrote :

@Matthias Klose:

I think it is well possible to test this without any Nvidia hardware: you probably can just do

    $ dpkg-deb -x nvidia-glx-185_185.18.36-0ubuntu2_i386.deb xxx
    $ LD_LIBRARY_PATH=$PWD/xxx/usr/lib glxinfo

and observe the crash -- it occurs on shared library load, very likely before Nvidia's GL library even tries to access the HW. Consider also:

    $ cat test.c
    int main() { return 0; }
    $ gcc -o test test.c -lGL
    $ LD_LIBRARY_PATH=$PWD/xxx/usr/lib ./test
    Segmentation fault (core dumped)

It crashes before reaching main(). Also, something strange is going on here:

    $ LD_DEBUG=all LD_LIBRARY_PATH=$PWD/xxx/usr/lib ./test
    [clip]
    6922: symbol=pthread_key_create; lookup in file=/usr/lib/libXdmcp.so.6 [0]
    6922: ./test: error: symbol lookup error: undefined symbol: pthread_key_create (fatal)
    Segmentation fault (core dumped)

I don't know (as of now) how to debug the .init section code of a shared library, so I'll have to stop here.