[ 
https://issues.apache.org/jira/browse/PROTON-2225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17112101#comment-17112101
 ] 

Jiri Daněk commented on PROTON-2225:
------------------------------------

Furthermore, I've seen it sometimes freeze on older clang (flaky on xenial 
https://travis-ci.com/github/jiridanek/qpid-proton/jobs/337482058#L2049, 
freezes reliably on xcode 
https://travis-ci.com/github/jiridanek/qpid-proton/jobs/337466798#L2165) and 
flaky leak on gcc xenial, 
https://travis-ci.com/github/jiridanek/qpid-proton/jobs/337466791#L1779.

{noformat}

6: Test command: /opt/pyenv/shims/python 
"/home/travis/build/jiridanek/qpid-proton/scripts/env.py" "--" 
"TEST_EXE_PREFIX=/usr/bin/valgrind --tool=memcheck --leak-check=full 
--error-exitcode=42 --quiet 
--suppressions=/home/travis/build/jiridanek/qpid-proton/tests/valgrind.supp" 
"/usr/bin/valgrind" "--tool=memcheck" "--leak-check=full" "--error-exitcode=42" 
"--quiet" 
"--suppressions=/home/travis/build/jiridanek/qpid-proton/tests/valgrind.supp" 
"/home/travis/build/jiridanek/qpid-proton/build/c/tests/c-threaderciser"
6: Test timeout computed to be: 1500
6: threaderciser start: threads=8, time=1, actions=[listen, close-listen, 
connect, close-connect, wake, timeout, cancel-timeout]
6: ==11750== 64 bytes in 1 blocks are definitely lost in loss record 1 of 1
6: ==11750==    at 0x4C2DB8F: malloc (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
6: ==11750==    by 0x40217A: connection_ctx_new (threaderciser.c:211)
6: ==11750==    by 0x40217A: cpool_connect.part.3 (threaderciser.c:226)
6: ==11750==    by 0x402CC6: cpool_connect (threaderciser.c:225)
6: ==11750==    by 0x402CC6: handle (threaderciser.c:425)
6: ==11750==    by 0x402CC6: proactor_thread (threaderciser.c:476)
6: ==11750==    by 0x504E6B9: start_thread (pthread_create.c:333)
6: ==11750== 
 6/46 Test  #6: c-threaderciser ..................***Failed   95.41 sec
{noformat}

> Set -DTHREADERCISER=ON by default, to prevent regressions
> ---------------------------------------------------------
>
>                 Key: PROTON-2225
>                 URL: https://issues.apache.org/jira/browse/PROTON-2225
>             Project: Qpid Proton
>          Issue Type: Test
>          Components: build
>    Affects Versions: proton-c-0.31.0
>            Reporter: Jiri Daněk
>            Assignee: Jiri Daněk
>            Priority: Major
>
> Previously, the test stopped compiling, as fixed in PROTON-2120. The reason 
> the test is disable is that the test is failing when it is run.
> Instead of disabling the test, it would be better to have the test running, 
> suppress the reported errors and fill a jira to get them fixed eventually. 
> This requires writing suppressions for both helgrind and tsan.
> Now that fd-limit test is disabled (PROTON-2172), we should have some other 
> test to highlight issues from PROTON-2133.
> Current state is that threaderciser test builds and fails with
> {noformat}
> threaderciser start: threads=8, time=1, actions=[listen, close-listen, 
> connect, close-connect, wake, timeout, cancel-timeout]
> ==17017== ---Thread-Announcement------------------------------------------
> ==17017== 
> ==17017== Thread #5 was created
> ==17017==    at 0x4D69A3E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==    by 0x4863DBB: create_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x486568B: pthread_create@@GLIBC_2.2.5 (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x483E374: pthread_create_WRK (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483F46F: pthread_create@* (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x403C92: main (threaderciser.c:572)
> ==17017== 
> ==17017== ---Thread-Announcement------------------------------------------
> ==17017== 
> ==17017== Thread #2 was created
> ==17017==    at 0x4D69A3E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==    by 0x4863DBB: create_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x486568B: pthread_create@@GLIBC_2.2.5 (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x483E374: pthread_create_WRK (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483F46F: pthread_create@* (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x403C64: main (threaderciser.c:571)
> ==17017== 
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 4 at 0x4FDF90C by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4855143: post_event (epoll.c:2429)
> ==17017==    by 0x4855C40: proactor_do_epoll (epoll.c:2676)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdf90c is 12 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:post_event
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 4 at 0x4FDF940 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4855267: post_event (epoll.c:2455)
> ==17017==    by 0x4855C40: proactor_do_epoll (epoll.c:2676)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdf940 is 64 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:post_event
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 1 at 0x4FDFA11 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x485526E: post_event (epoll.c:2456)
> ==17017==    by 0x4855C40: proactor_do_epoll (epoll.c:2676)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa11 is 273 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:post_event
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 1 at 0x4FDFA12 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x485533F: post_event (epoll.c:2477)
> ==17017==    by 0x4855C40: proactor_do_epoll (epoll.c:2676)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa12 is 274 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:post_event
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 8 at 0x4FDFA00 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4855351: post_event (epoll.c:2477)
> ==17017==    by 0x4855C40: proactor_do_epoll (epoll.c:2676)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa00 is 256 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:post_event
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 8 at 0x4FDF9A8 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484FBAF: make_runnable (epoll.c:630)
> ==17017==    by 0x4855C57: proactor_do_epoll (epoll.c:2678)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdf9a8 is 168 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:make_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 1 at 0x4FDFA12 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484FC37: make_runnable (epoll.c:635)
> ==17017==    by 0x4855C57: proactor_do_epoll (epoll.c:2678)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa12 is 274 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:make_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 8 at 0x4FDFA08 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484FC50: make_runnable (epoll.c:638)
> ==17017==    by 0x4855C57: proactor_do_epoll (epoll.c:2678)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa08 is 264 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:make_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 8 at 0x4FDFA00 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484F853: assign_thread (epoll.c:539)
> ==17017==    by 0x48555E8: next_runnable (epoll.c:2539)
> ==17017==    by 0x48557CD: proactor_do_epoll (epoll.c:2578)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa00 is 256 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:assign_thread
>    fun:next_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 8 at 0x4FDFA08 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484F85E: assign_thread (epoll.c:540)
> ==17017==    by 0x48555E8: next_runnable (epoll.c:2539)
> ==17017==    by 0x48557CD: proactor_do_epoll (epoll.c:2578)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa08 is 264 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:assign_thread
>    fun:next_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 1 at 0x4FDFA10 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854E3B: process (epoll.c:2362)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfa10 is 272 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 4 at 0x4FDF9B0 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854E59: process (epoll.c:2368)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdf9b0 is 176 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 1 at 0x4FDFC69 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854F24: process (epoll.c:2382)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fdfc69 is 873 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ---Thread-Announcement------------------------------------------
> ==17017== 
> ==17017== Thread #4 was created
> ==17017==    at 0x4D69A3E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==    by 0x4863DBB: create_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x486568B: pthread_create@@GLIBC_2.2.5 (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x483E374: pthread_create_WRK (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483F46F: pthread_create@* (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x403C64: main (threaderciser.c:571)
> ==17017== 
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 1 at 0x4FE7802 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x48555CB: next_runnable (epoll.c:2538)
> ==17017==    by 0x48557CD: proactor_do_epoll (epoll.c:2578)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe7802 is 274 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:next_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 8 at 0x4FE77F0 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484F820: assign_thread (epoll.c:538)
> ==17017==    by 0x48555E8: next_runnable (epoll.c:2539)
> ==17017==    by 0x48557CD: proactor_do_epoll (epoll.c:2578)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe77f0 is 256 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:assign_thread
>    fun:next_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 1 at 0x4FE7802 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x484F86D: assign_thread (epoll.c:541)
> ==17017==    by 0x48555E8: next_runnable (epoll.c:2539)
> ==17017==    by 0x48557CD: proactor_do_epoll (epoll.c:2578)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe7802 is 274 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:assign_thread
>    fun:next_runnable
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 1 at 0x4FE7801 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854E30: process (epoll.c:2361)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe7801 is 273 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 4 at 0x4FE7730 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854F09: process (epoll.c:2380)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe7730 is 64 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during write of size 4 at 0x4FE7730 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854F19: process (epoll.c:2381)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe7730 is 64 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017==  Lock at 0x4FD4380 was first observed
> ==17017==    at 0x483F7BD: pthread_mutex_init (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EBFF: pmutex_init (epoll.c:137)
> ==17017==    by 0x485412D: pn_proactor (epoll.c:2104)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Address 0x4fd4380 is 576 bytes inside a block of size 896 alloc'd
> ==17017==    at 0x483A9F2: calloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48540BD: pn_proactor (epoll.c:2099)
> ==17017==    by 0x402F2D: global_init (threaderciser.c:335)
> ==17017==    by 0x403BD2: main (threaderciser.c:564)
> ==17017==  Block was alloc'd by thread #1
> ==17017== 
> ==17017== Possible data race during read of size 8 at 0x4FE7798 by thread #5
> ==17017== Locks held: 1, at address 0x4FD4380
> ==17017==    at 0x4854F43: process (epoll.c:2384)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Address 0x4fe7798 is 168 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #4
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
>    fun:mythread_wrapper
>    fun:start_thread
>    fun:clone
> }
> ==17017== ---Thread-Announcement------------------------------------------
> ==17017== 
> ==17017== Thread #3 was created
> ==17017==    at 0x4D69A3E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==    by 0x4863DBB: create_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x486568B: pthread_create@@GLIBC_2.2.5 (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x483E374: pthread_create_WRK (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483F46F: pthread_create@* (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x403C92: main (threaderciser.c:572)
> ==17017== 
> ==17017== ----------------------------------------------------------------
> ==17017== 
> ==17017== Possible data race during read of size 1 at 0x4FDF988 by thread #5
> ==17017== Locks held: none
> ==17017==    at 0x483B42C: my_memcmp (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483B6D9: mutex_destroy_WRK (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483F849: pthread_mutex_destroy (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EC2E: pmutex_finalize (epoll.c:143)
> ==17017==    by 0x484F26F: pcontext_finalize (epoll.c:348)
> ==17017==    by 0x4850A05: pconnection_final_free (epoll.c:944)
> ==17017==    by 0x4850B31: pconnection_cleanup (epoll.c:967)
> ==17017==    by 0x4851B42: pconnection_process (epoll.c:1337)
> ==17017==    by 0x4854F71: process (epoll.c:2385)
> ==17017==    by 0x48557F3: proactor_do_epoll (epoll.c:2581)
> ==17017==    by 0x4856402: pn_proactor_wait (epoll.c:2803)
> ==17017==    by 0x40362D: proactor_thread (threaderciser.c:473)
> ==17017== 
> ==17017== This conflicts with a previous write of size 4 by thread #3
> ==17017== Locks held: none
> ==17017==    at 0x4868E17: __pthread_mutex_unlock_usercnt (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x483BEEB: mutex_unlock_WRK (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x483F875: pthread_mutex_unlock (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x484EC62: unlock (epoll.c:145)
> ==17017==    by 0x485135E: pconnection_done (epoll.c:1163)
> ==17017==    by 0x485650E: pn_proactor_done (epoll.c:2829)
> ==17017==    by 0x403696: proactor_thread (threaderciser.c:478)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==  Address 0x4fdf988 is 136 bytes inside a block of size 909 alloc'd
> ==17017==    at 0x48387A3: malloc (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x48524FA: pn_proactor_connect2 (epoll.c:1545)
> ==17017==    by 0x4857024: pn_proactor_connect (proactor-internal.c:97)
> ==17017==    by 0x402B23: cpool_connect (threaderciser.c:229)
> ==17017==    by 0x403120: global_connect (threaderciser.c:367)
> ==17017==    by 0x4031A5: global_do_stuff (threaderciser.c:378)
> ==17017==    by 0x403330: user_thread (threaderciser.c:397)
> ==17017==    by 0x483E568: mythread_wrapper (in 
> /nix/store/6glsqxyngs9kjkx9mqhshwfi93qfsw8q-valgrind-3.15.0/lib/valgrind/vgpreload_helgrind-amd64-linux.so)
> ==17017==    by 0x4864EDC: start_thread (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libpthread-2.30.so)
> ==17017==    by 0x4D69A4E: clone (in 
> /nix/store/6m2k8kx8h216jlx9dg3lp4m90bz05yck-glibc-2.30/lib/libc-2.30.so)
> ==17017==  Block was alloc'd by thread #2
> ==17017== 
> {
>    <insert_a_suppression_name_here>
>    Helgrind:Race
>    fun:my_memcmp
>    fun:mutex_destroy_WRK
>    fun:pthread_mutex_destroy
>    fun:pmutex_finalize
>    fun:pcontext_finalize
>    fun:pconnection_final_free
>    fun:pconnection_cleanup
>    fun:pconnection_process
>    fun:process
>    fun:proactor_do_epoll
>    fun:pn_proactor_wait
>    fun:proactor_thread
> }
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to