From 03bbc0809832cfc64ebef984c1dae5d64c95bfca Mon Sep 17 00:00:00 2001 From: christos Date: Tue, 5 Mar 2019 01:35:52 +0000 Subject: Transfer all the keys that were created in the libc stub implementation to the pthread tsd implementation when the main thread is created. This corrects a problem where a process created keys before libpthread was loaded (either from the libc constructor or because libpthread was dlopened later). This fixes a problem with jemalloc which creates keys in the constructor. --- lib/libpthread/pthread.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/libpthread/pthread.c') diff --git a/lib/libpthread/pthread.c b/lib/libpthread/pthread.c index 56c060a9c35..47add900ee6 100644 --- a/lib/libpthread/pthread.c +++ b/lib/libpthread/pthread.c @@ -1,4 +1,4 @@ -/* $NetBSD: pthread.c,v 1.152 2018/08/19 02:10:42 kamil Exp $ */ +/* $NetBSD: pthread.c,v 1.153 2019/03/05 01:35:52 christos Exp $ */ /*- * Copyright (c) 2001, 2002, 2003, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__RCSID("$NetBSD: pthread.c,v 1.152 2018/08/19 02:10:42 kamil Exp $"); +__RCSID("$NetBSD: pthread.c,v 1.153 2019/03/05 01:35:52 christos Exp $"); #define __EXPOSE_STACK 1 @@ -1330,6 +1330,7 @@ pthread__initmainstack(void) break; } } + pthread__copy_tsd(pthread__main); } /* -- cgit