Mercurial > hg > nginx-quic
view auto/threads @ 6517:657e029bac28
Thread pools: memory barriers in task completion notifications.
The ngx_thread_pool_done object isn't volatile, and at least some
compilers assume that it is permitted to reorder modifications of
volatile and non-volatile objects. Added appropriate ngx_memory_barrier()
calls to make sure all modifications will happen before the lock is released.
Reported by Mindaugas Rasiukevicius,
http://mailman.nginx.org/pipermail/nginx-devel/2016-April/008160.html.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 19 Apr 2016 17:18:28 +0300 |
parents | 466bd63b63d1 |
children | 04ebf29eaf5b |
line wrap: on
line source
# Copyright (C) Nginx, Inc. if [ $USE_THREADS = YES ]; then if [ "$NGX_PLATFORM" = win32 ]; then cat << END $0: --with-threads is not supported on Windows END exit 1 fi have=NGX_THREADS . auto/have CORE_DEPS="$CORE_DEPS $THREAD_POOL_DEPS" CORE_SRCS="$CORE_SRCS $THREAD_POOL_SRCS" CORE_LIBS="$CORE_LIBS -lpthread" fi