From ba18c1ecc6a18203ad8496791154af86f706f632 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Fri, 22 Feb 2019 02:56:10 -0500 Subject: add membarrier syscall wrapper, refactor dynamic tls install to use it the motivation for this change is twofold. first, it gets the fallback logic out of the dynamic linker, improving code readability and organization. second, it provides application code that wants to use the membarrier syscall, which depends on preregistration of intent before the process becomes multithreaded unless unbounded latency is acceptable, with a symbol that, when linked, ensures that this registration happens. --- src/internal/pthread_impl.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/internal') diff --git a/src/internal/pthread_impl.h b/src/internal/pthread_impl.h index de089967..9b001421 100644 --- a/src/internal/pthread_impl.h +++ b/src/internal/pthread_impl.h @@ -130,7 +130,7 @@ hidden int __init_tp(void *); hidden void *__copy_tls(unsigned char *); hidden void __reset_tls(); -hidden void __dl_prepare_for_threads(void); +hidden void __membarrier_init(void); hidden void __dl_thread_cleanup(void); hidden void __testcancel(); hidden void __do_cleanup_push(struct __ptcb *); -- cgit v1.2.1