diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/socket_wrapper.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/socket_wrapper.c b/src/socket_wrapper.c index 36482c6..7a27b40 100644 --- a/src/socket_wrapper.c +++ b/src/socket_wrapper.c @@ -659,6 +659,12 @@ static void swrap_mutex_unlock(pthread_mutex_t *mutex) } } +/* + * These macros have a thread race condition on purpose! + * + * This is an optimization to avoid locking each time we check if the symbol is + * bound. + */ #define swrap_bind_symbol_libc(sym_name) \ if (swrap.libc.symbols._libc_##sym_name.obj == NULL) { \ swrap_mutex_lock(&libc_symbol_binding_mutex); \ |