libc6-2.0.6-3 breaks multi-threaded programs
Hi,
A C++ program which is linked to a multi-threaded C++ library and was
working perfectly fine with libc6-2.0.6-2 is now dumping core. The funny
thing is that the core dump happens in a call to the stdio libary.
A small test program I have that simulates the problem is given below:
#include <stdio.h>
int
main()
{
char buf[80];
fgets(buf, 80, stdin);
return 0;
}
This program was linked with my multi-threaded C++ library, and when I run
the program gets a SIGSEGV and the stack trace looks like this:
#0 0x4008f95c in pthread_mutex_lock ()
#1 0x4009129c in flockfile ()
#2 0x40128b53 in fgets ()
#3 0x80485a6 in main ()
The library and the program were compiled with -D_REENTRANT. The C++ library
is actually a C library which is compiled with C++ and doesn't have any
classes. So I don't think global constructors mess up anything. As I
mentioned earlier, the program was working perfectly with libc6-2.0.6-2. The
same program and library are working fine on UnixWare 2.1.2.
I am using an uptodate (as of today :-) hamm distribution with a custom
built 2.0.32 kernel. (libc6-2.0.6-3, libc6-dev-2.0.6.3, ldso-1.9.6-2). Any
help will be greatly appreciated. Thanks.
Ganesan
--
R. Ganesan (rganesan@novell.com) | Ph: 91-80-5721852 Ext: 2149
Novell India Development Center. | #include <std_disclaimer.h>
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: