And what does `ldd libnetsnmp.so.x`, `ldd libfoo.y`, show?
They give empty replies.
What is `ldd yourexecutable` show?
It?s usually linked static but if I remove the -static line it says:
libnetsnmp.so.5 => /usr/local/lib/libnetsnmp.so.5 (0x2807f000)
libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x280fe000)
libpcap.so.2 => /usr/lib/libpcap.so.2 (0x28209000)
libkse.so.1 => /usr/lib/libkse.so.1 (0x28225000)
libc.so.5 => /usr/lib/libc.so.5 (0x28246000)
malloc is thread safe and we've been using it fine
with all our tests. I suspect you're using another
library that is using libc_r or something.
malloc works for me with for example linuxthreads. So I do believe that
the the trigger for malloc locking works, however looking at the code,
spinlocks are implemented differently depending on which thread library is
I have only I686_CPU on my kernel config and I don?t include pthread.h
to all object files because it?s not supposed to be neccessary. (only those
which call pthread_* functions) The code is compiled on a machine with
no SMP and run on both SMP and non-SMP machines.
Do I understand correctly that libkse mutexes always require syscall
when locking and unlocking?