Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Incompatibilities of userland 5.99.45 and 5.99.48



On Mar 24, 2011, at 7:17 AM, Frank Wille wrote:

> These days I tried to update an ofppc and a sandpoint machine to 5.99.48.
> Both fail with pkgsrc binaries compiled under 5.99.45, which worked before.
> 
> The segmentation fault always involves libpthread and __cxa_atexit().
> This is a typical example:
> 
> Core was generated by `sqlite3'.
> Program terminated with signal 11, Segmentation fault.
> #0  0xefea7e4c in pthread_mutex_lock () from /usr/lib/libpthread.so.1
> (gdb) bt
> #0  0xefea7e4c in pthread_mutex_lock () from /usr/lib/libpthread.so.1
> #1  0xefe2a62c in __cxa_atexit () from /usr/lib/libc.so.12
> #2  0xefe2a708 in atexit () from /usr/lib/libc.so.12
> #3  0x0180137c in ?? ()
> #4  0x0180146c in ?? ()
> #5  0xeffe2344 in _rtld_start () from /usr/libexec/ld.elf_so
> Previous frame inner to this frame (corrupt stack?)
> 
> Did the interface of libpthread or libc change without incrementing the
> so-version number?
> 
> Or is it caused by PPC-specific changes in the last weeks (like the
> secure-plt stuff)?
> 
> This probably means I have to recompile all packages?

I'm going to bet that this is due to crt0 overwriting r2 which was set
by ld.elf_so.  I think I can fix this with a kludge.

A workaround is in www.netbsd.org/~matt/ppc-tls-diff.txt , can you try it?


Home | Main Index | Thread Index | Old Index