Module Name: src
Committed By: skrll
Date: Sat Oct 19 10:14:06 UTC 2013
Modified Files:
src/libexec/ld.elf_so: tls.c
Log Message:
Add debug code.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/libexec/ld.elf_so/tls.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/libexec/ld.elf_so/tls.c
diff -u src/libexec/ld.elf_so/tls.c:1.7 src/libexec/ld.elf_so/tls.c:1.8
--- src/libexec/ld.elf_so/tls.c:1.7 Sat Apr 23 16:40:08 2011
+++ src/libexec/ld.elf_so/tls.c Sat Oct 19 10:14:06 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: tls.c,v 1.7 2011/04/23 16:40:08 joerg Exp $ */
+/* $NetBSD: tls.c,v 1.8 2013/10/19 10:14:06 skrll Exp $ */
/*-
* Copyright (c) 2011 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -29,12 +29,13 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: tls.c,v 1.7 2011/04/23 16:40:08 joerg Exp $");
+__RCSID("$NetBSD: tls.c,v 1.8 2013/10/19 10:14:06 skrll Exp $");
#include <sys/param.h>
#include <sys/ucontext.h>
#include <lwp.h>
#include <string.h>
+#include "debug.h"
#include "rtld.h"
#if defined(__HAVE_TLS_VARIANT_I) || defined(__HAVE_TLS_VARIANT_II)
@@ -100,6 +101,7 @@ _rtld_tls_initial_allocation(void)
_rtld_tls_static_space = roundup2(_rtld_tls_static_space,
sizeof(void *));
#endif
+ dbg(("_rtld_tls_static_space %zu", _rtld_tls_static_space));
tcb = _rtld_tls_allocate_locked();
#ifdef __HAVE___LWP_SETTCB
@@ -132,6 +134,7 @@ _rtld_tls_allocate_locked(void)
tcb = (struct tls_tcb *)p;
tcb->tcb_self = tcb;
#endif
+ dbg(("tcb %p", tcb));
tcb->tcb_dtv = xcalloc(sizeof(*tcb->tcb_dtv) * (2 + _rtld_tls_max_index));
++tcb->tcb_dtv;
SET_DTV_MAX_INDEX(tcb->tcb_dtv, _rtld_tls_max_index);
@@ -144,6 +147,8 @@ _rtld_tls_allocate_locked(void)
#else
q = p - obj->tlsoffset;
#endif
+ dbg(("obj %p dtv %p tlsoffset %zu",
+ obj, q, obj->tlsoffset));
memcpy(q, obj->tlsinit, obj->tlsinitsize);
tcb->tcb_dtv[obj->tlsindex] = q;
}