This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

New crash in crtstuff.c since Oct 31


Tom Tromey writes:
 > I'm running on x86 Red Hat Linux 9.
 > 
 > Recently all java programs have started crashing like so:
 > 
 > #0  0x42073771 in free () from /lib/tls/libc.so.6
 > #1  0x420ebd8e in __unregister_atfork () from /lib/tls/libc.so.6
 > #2  0x42029fb8 in __cxa_finalize () from /lib/tls/libc.so.6
 > #3  0x4038ed55 in __do_global_dtors_aux ()
 >    from /home/tromey/gnu/Trunk/install/lib/libgcj.so.4
 > #4  0x406563a6 in _fini () from /home/tromey/gnu/Trunk/install/lib/libgcj.so.4
 > #5  0x4000ce44 in _dl_fini () from /lib/ld-linux.so.2
 > #6  0x42029d40 in exit () from /lib/tls/libc.so.6
 > #7  0x08048bee in main (argc=1, argv=0xbfffedf4)
 >     at ../../../gcc/libjava/gij.cc:163
 > 
 > 
 > For instance, the above came from simply invoking "gij".
 > 
 > If I revert the gcc/gcc directory to October 31, everything starts
 > working again.
 > 
 > Jeff Sturm reports that setting LD_ASSUME_KERNEL=2.4.17 will also fix
 > the problem.
 > 
 > Can anybody shed some light on this?

What is your kernel version?

A clue:

 $ LD_ASSUME_KERNEL=2.4.17 ldd ./a.out
        libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1 (0x40017000)
        libgcj.so.4 => /usr/local/lib/libgcj.so.4 (0x40020000)
        libm.so.6 => /lib/i686/libm.so.6 (0x40907000)
        libpthread.so.0 => /lib/i686/libpthread.so.0 (0x4092a000)
        libdl.so.2 => /lib/libdl.so.2 (0x4097a000)
        libc.so.6 => /lib/i686/libc.so.6 (0x4097e000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

 $ ldd ./a.out
        libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1 (0x40017000)
        libgcj.so.4 => /usr/local/lib/libgcj.so.4 (0x40020000)
        libm.so.6 => /lib/tls/libm.so.6 (0x40907000)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x4092a000)
        libdl.so.2 => /lib/libdl.so.2 (0x40938000)
        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

So, LD_ASSUME_KERNEL changes which libraries are used.

Andrew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]