Skip to content

Instantly share code, notes, and snippets.

@MasterDuke17
Created February 6, 2021 17:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MasterDuke17/132c7e246dc4425b699b5d88490a91f8 to your computer and use it in GitHub Desktop.
Save MasterDuke17/132c7e246dc4425b699b5d88490a91f8 to your computer and use it in GitHub Desktop.
[dan@alexandria nqp]$ MVM_JIT_DISABLE=1 MVM_SPESH_BLOCKING=1 '/home/dan/Source/perl6/install/bin/moar' --libpath=src/vm/moar/stage0 src/vm/moar/stage0/nqp.moarvm --bootstrap --setting-path=gen/moar/stage1 --module-path=gen/moar/stage1 --no-regex-lib --target=mbc --setting=NQPCORE --stable-sc=stage1 --output=gen/moar/stage1/MASTNodes.moarvm gen/moar/stage1/MASTNodes.nqp
==================
WARNING: ThreadSanitizer: data race (pid=181922)
Read of size 8 at 0x7b5c00000040 by main thread:
#0 MVM_gc_allocate_nursery src/gc/allocation.c:20 (libmoar.so+0x30bdc6)
#1 MVM_gc_allocate src/gc/allocation.h:18 (libmoar.so+0x30b9c6)
#2 MVM_gc_allocate_zeroed src/gc/allocation.c:56 (libmoar.so+0x30bed6)
#3 MVM_gc_allocate_object src/gc/allocation.c:93 (libmoar.so+0x30c503)
#4 MVM_string_utf8_c8_decode src/strings/utf8_c8.c:403 (libmoar.so+0x4a94e7)
#5 MVM_vm_run_file src/moar.c:496 (libmoar.so+0x51c620)
#6 main src/main.c:305 (moar+0x3008)
Previous atomic write of size 8 at 0x7b5c00000040 by thread T1 (mutexes: write M30):
#0 __tsan_atomic64_compare_exchange_strong /build/gcc/src/gcc/libsanitizer/tsan/tsan_interface_atomic.cpp:786 (libtsan.so.0+0x84902)
#1 AO_fetch_compare_and_swap_full 3rdparty/libatomicops/src/atomic_ops/sysdeps/gcc/generic-small.h:584 (libmoar.so+0x308342)
#2 signal_one_thread src/gc/orchestrate.c:35 (libmoar.so+0x308c22)
#3 signal_all src/gc/orchestrate.c:81 (libmoar.so+0x308db3)
#4 MVM_gc_enter_from_allocator src/gc/orchestrate.c:545 (libmoar.so+0x30a73d)
#5 MVM_gc_allocate_nursery src/gc/allocation.c:37 (libmoar.so+0x30be28)
#6 MVM_gc_allocate src/gc/allocation.h:18 (libmoar.so+0x30b9c6)
#7 MVM_gc_allocate_zeroed src/gc/allocation.c:56 (libmoar.so+0x30bed6)
#8 MVM_gc_allocate_object src/gc/allocation.c:93 (libmoar.so+0x30c503)
#9 MVM_repr_alloc_init src/6model/reprconv.c:17 (libmoar.so+0x35afa5)
#10 worker src/spesh/worker.c:10 (libmoar.so+0x476cfc)
#11 invoke_handler src/6model/reprs/MVMCFunction.c:9 (libmoar.so+0x37ba03)
#12 thread_initial_invoke src/core/threads.c:58 (libmoar.so+0x2bfa2a)
#13 MVM_interp_run src/core/interp.c:159 (libmoar.so+0x20ffc5)
#14 start_thread src/core/threads.c:91 (libmoar.so+0x2bfbb9)
Location is heap block of size 848 at 0x7b5c00000000 allocated by main thread:
#0 calloc /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:668 (libtsan.so.0+0x2ffbc)
#1 MVM_calloc src/core/alloc.h:11 (libmoar.so+0x29cc21)
#2 MVM_tc_create src/core/threadcontext.c:8 (libmoar.so+0x29cf24)
#3 MVM_vm_create_instance src/moar.c:122 (libmoar.so+0x519a46)
#4 main src/main.c:280 (moar+0x2e8f)
Mutex M30 (0x7b7800000018) created at:
#0 pthread_mutex_init /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:1220 (libtsan.so.0+0x4a538)
#1 uv_mutex_init 3rdparty/libuv/src/unix/thread.c:284 (libmoar.so+0x594c7a)
#2 main src/main.c:280 (moar+0x2e8f)
Thread T1 (tid=181924, running) created by main thread at:
#0 pthread_create /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:962 (libtsan.so.0+0x5efab)
#1 uv_thread_create_ex 3rdparty/libuv/src/unix/thread.c:259 (libmoar.so+0x594b7d)
#2 MVM_spesh_worker_start src/spesh/worker.c:267 (libmoar.so+0x478469)
#3 MVM_vm_create_instance src/moar.c:443 (libmoar.so+0x51c1b2)
#4 main src/main.c:280 (moar+0x2e8f)
SUMMARY: ThreadSanitizer: data race src/gc/allocation.c:20 in MVM_gc_allocate_nursery
==================
==================
WARNING: ThreadSanitizer: data race (pid=181922)
Write of size 4 at 0x7b78000001d4 by thread T1 (mutexes: write M30):
#0 MVM_gc_enter_from_allocator src/gc/orchestrate.c:544 (libmoar.so+0x30a6fc)
#1 MVM_gc_allocate_nursery src/gc/allocation.c:37 (libmoar.so+0x30be28)
#2 MVM_gc_allocate src/gc/allocation.h:18 (libmoar.so+0x30b9c6)
#3 MVM_gc_allocate_zeroed src/gc/allocation.c:56 (libmoar.so+0x30bed6)
#4 MVM_gc_allocate_object src/gc/allocation.c:93 (libmoar.so+0x30c503)
#5 MVM_repr_alloc_init src/6model/reprconv.c:17 (libmoar.so+0x35afa5)
#6 worker src/spesh/worker.c:13 (libmoar.so+0x476d74)
#7 invoke_handler src/6model/reprs/MVMCFunction.c:9 (libmoar.so+0x37ba03)
#8 thread_initial_invoke src/core/threads.c:58 (libmoar.so+0x2bfa2a)
#9 MVM_interp_run src/core/interp.c:159 (libmoar.so+0x20ffc5)
#10 start_thread src/core/threads.c:91 (libmoar.so+0x2bfbb9)
Previous write of size 4 at 0x7b78000001d4 by main thread (mutexes: write M11):
#0 finish_gc src/gc/orchestrate.c:289 (libmoar.so+0x30991a)
#1 run_gc src/gc/orchestrate.c:447 (libmoar.so+0x30a034)
#2 MVM_gc_enter_from_interrupt src/gc/orchestrate.c:728 (libmoar.so+0x30b5bb)
#3 MVM_gc_allocate_nursery src/gc/allocation.c:21 (libmoar.so+0x30bde8)
#4 MVM_gc_allocate src/gc/allocation.h:18 (libmoar.so+0x30b9c6)
#5 MVM_gc_allocate_zeroed src/gc/allocation.c:56 (libmoar.so+0x30bed6)
#6 MVM_gc_allocate_object src/gc/allocation.c:93 (libmoar.so+0x30c503)
#7 MVM_string_utf8_c8_decode src/strings/utf8_c8.c:403 (libmoar.so+0x4a94e7)
#8 MVM_vm_run_file src/moar.c:496 (libmoar.so+0x51c620)
#9 main src/main.c:305 (moar+0x3008)
Location is heap block of size 2840 at 0x7b7800000000 allocated by main thread:
#0 calloc /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:668 (libtsan.so.0+0x2ffbc)
#1 MVM_calloc src/core/alloc.h:11 (libmoar.so+0x5191f5)
#2 MVM_vm_create_instance src/moar.c:119 (libmoar.so+0x519a2b)
#3 main src/main.c:280 (moar+0x2e8f)
Mutex M30 (0x7b7800000018) created at:
#0 pthread_mutex_init /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:1220 (libtsan.so.0+0x4a538)
#1 uv_mutex_init 3rdparty/libuv/src/unix/thread.c:284 (libmoar.so+0x594c7a)
#2 main src/main.c:280 (moar+0x2e8f)
Mutex M11 (0x7b7800000088) created at:
#0 pthread_mutex_init /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:1220 (libtsan.so.0+0x4a538)
#1 uv_mutex_init 3rdparty/libuv/src/unix/thread.c:284 (libmoar.so+0x594c7a)
#2 main src/main.c:280 (moar+0x2e8f)
Thread T1 (tid=181924, running) created by main thread at:
#0 pthread_create /build/gcc/src/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:962 (libtsan.so.0+0x5efab)
#1 uv_thread_create_ex 3rdparty/libuv/src/unix/thread.c:259 (libmoar.so+0x594b7d)
#2 MVM_spesh_worker_start src/spesh/worker.c:267 (libmoar.so+0x478469)
#3 MVM_vm_create_instance src/moar.c:443 (libmoar.so+0x51c1b2)
#4 main src/main.c:280 (moar+0x2e8f)
SUMMARY: ThreadSanitizer: data race src/gc/orchestrate.c:544 in MVM_gc_enter_from_allocator
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment