DragonFly commits List (threaded) for 2011-07
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: rtld-elf - restore old tls/tcb code
commit 18d39a4f89a4c485af1b89815f4e63988532be5e
Author: Alex Hornung <ahornung@gmail.com>
Date: Sun Jul 24 14:45:50 2011 +0100
rtld-elf - restore old tls/tcb code
* This was ported incorrectly from FreBSD; the dtv in the TCB needs to
be updated properly.
* This fixes a fairly tricky issue that appears in threaded programs
using dlopen() and family, such as php and Java. It presented itself
as a strcmp segfault in object_match_name() due to a messed up STAILQ
->next pointer. The pointer was being messed up by the TLS code.
Reported-by: Peter Avalos, Antonio Huete, Francois Tigeot
Summary of changes:
libexec/rtld-elf/i386/reloc.c | 14 +++-----------
libexec/rtld-elf/rtld.c | 1 -
libexec/rtld-elf/x86_64/reloc.c | 9 ++-------
3 files changed, 5 insertions(+), 19 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/18d39a4f89a4c485af1b89815f4e63988532be5e
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]