Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The test executable numa_allocator_test fails with an assertion #6502

Open
yurivict opened this issue Jun 1, 2024 · 0 comments
Open

The test executable numa_allocator_test fails with an assertion #6502

yurivict opened this issue Jun 1, 2024 · 0 comments

Comments

@yurivict
Copy link
Contributor

yurivict commented Jun 1, 2024

Steps to Reproduce the Problem

$ /usr/ports/devel/hpx/work/.build/bin/numa_allocator_test
<DEB> 0000000000 -------------- 0x0x2ff06015f00 cpu ---               SPQUEUE start_thread         local_thread 0 
<DEB> 0000000023 -------------- 0x0x2ff06016d00 cpu ---               SPQUEUE start_thread         local_thread 2 
<DEB> 0000000037 -------------- 0x0x2ff06016600 cpu ---               SPQUEUE start_thread         local_thread 1 
<DEB> 0000000120 -------------- 0x0x2ff06017400 cpu ---               SPQUEUE start_thread         local_thread 3 
<DEB> 0000000521 -------------- 0x0x2ff06015f00 cpu ---               SPQUEUE thread holder        local_thread 0 domain 0 index 0 local_id 0 owner_mask f 
<DEB> 0000000782 -------------- 0x0x2ff06015f00 cpu ---               QH_THRD construct            D 00 Q 000 Rollover counter 00 01 
<DEB> 0000000810 -------------- 0x0x2ff06015f00 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000000839 -------------- 0x0x2ff06015f00 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000000853 -------------- 0x0x2ff06015f00 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000000865 -------------- 0x0x2ff06015f00 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000001100 -------------- 0x0x2ff06016600 cpu ---               SPQUEUE thread holder        local_thread 1 domain 0 index 1 local_id 1 owner_mask 7 
<DEB> 0000001405 -------------- 0x0x2ff06016600 cpu ---               QH_THRD construct            D 00 Q 001 Rollover counter 01 01 
<DEB> 0000001427 -------------- 0x0x2ff06016600 cpu ---               _TQ_MC_ set_holder           D 00 Q 001 
<DEB> 0000001452 -------------- 0x0x2ff06016600 cpu ---               _TQ_MC_ set_holder           D 00 Q 001 
<DEB> 0000001474 -------------- 0x0x2ff06016600 cpu ---               _TQ_MC_ set_holder           D 00 Q 001 
<DEB> 0000001487 -------------- 0x0x2ff06016600 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000001721 -------------- 0x0x2ff06016d00 cpu ---               SPQUEUE thread holder        local_thread 2 domain 0 index 2 local_id 2 owner_mask 7 
<DEB> 0000002003 -------------- 0x0x2ff06016d00 cpu ---               QH_THRD construct            D 00 Q 002 Rollover counter 02 01 
<DEB> 0000002028 -------------- 0x0x2ff06016d00 cpu ---               _TQ_MC_ set_holder           D 00 Q 002 
<DEB> 0000002061 -------------- 0x0x2ff06016d00 cpu ---               _TQ_MC_ set_holder           D 00 Q 002 
<DEB> 0000002085 -------------- 0x0x2ff06016d00 cpu ---               _TQ_MC_ set_holder           D 00 Q 002 
<DEB> 0000002107 -------------- 0x0x2ff06016d00 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000002378 -------------- 0x0x2ff06017400 cpu ---               SPQUEUE thread holder        local_thread 3 domain 0 index 3 local_id 3 owner_mask 7 
<DEB> 0000002753 -------------- 0x0x2ff06017400 cpu ---               QH_THRD construct            D 00 Q 003 Rollover counter 03 01 
<DEB> 0000002785 -------------- 0x0x2ff06017400 cpu ---               _TQ_MC_ set_holder           D 00 Q 003 
<DEB> 0000002820 -------------- 0x0x2ff06017400 cpu ---               _TQ_MC_ set_holder           D 00 Q 003 
<DEB> 0000002844 -------------- 0x0x2ff06017400 cpu ---               _TQ_MC_ set_holder           D 00 Q 003 
<DEB> 0000002865 -------------- 0x0x2ff06017400 cpu ---               _TQ_MC_ set_holder           D 00 Q 000 
<DEB> 0000002890 -------------- 0x0x2ff06017400 cpu ---               QH_THRD details              owner_mask_ 00001111 D 00 Q 000 
<DEB> 0000002933 -------------- 0x0x2ff06017400 cpu ---               QH_THRD bp_queue             0x2ff07a17000 holder 0x2ff07a94000 
<DEB> 0000002957 -------------- 0x0x2ff06017400 cpu ---               QH_THRD hp_queue             0x2ff07a17600 holder 0x2ff07a94000 
<DEB> 0000002979 -------------- 0x0x2ff06017400 cpu ---               QH_THRD np_queue             0x2ff07a17c00 holder 0x2ff07a94000 
<DEB> 0000002999 -------------- 0x0x2ff06017400 cpu ---               QH_THRD lp_queue             0x2ff07a18200 holder 0x2ff07603000 
<DEB> 0000003020 -------------- 0x0x2ff06017400 cpu ---               QH_THRD details              owner_mask_ 00000111 D 00 Q 001 
<DEB> 0000003044 -------------- 0x0x2ff06017400 cpu ---               QH_THRD bp_queue             0x2ff07e0d000 holder 0x2ff07e75000 
<DEB> 0000003064 -------------- 0x0x2ff06017400 cpu ---               QH_THRD hp_queue             0x2ff07e0d600 holder 0x2ff07e75000 
<DEB> 0000003084 -------------- 0x0x2ff06017400 cpu ---               QH_THRD np_queue             0x2ff07e0dc00 holder 0x2ff07e75000 
<DEB> 0000003105 -------------- 0x0x2ff06017400 cpu ---               QH_THRD lp_queue             0x2ff07a18200 holder 0x2ff07603000 
<DEB> 0000003125 -------------- 0x0x2ff06017400 cpu ---               QH_THRD details              owner_mask_ 00000111 D 00 Q 002 
<DEB> 0000003147 -------------- 0x0x2ff06017400 cpu ---               QH_THRD bp_queue             0x2ff0840d000 holder 0x2ff08475000 
<DEB> 0000003168 -------------- 0x0x2ff06017400 cpu ---               QH_THRD hp_queue             0x2ff0840d600 holder 0x2ff08475000 
<DEB> 0000003188 -------------- 0x0x2ff06017400 cpu ---               QH_THRD np_queue             0x2ff0840dc00 holder 0x2ff08475000 
<DEB> 0000003208 -------------- 0x0x2ff06017400 cpu ---               QH_THRD lp_queue             0x2ff07a18200 holder 0x2ff07603000 
<DEB> 0000003231 -------------- 0x0x2ff06017400 cpu ---               QH_THRD details              owner_mask_ 00000111 D 00 Q 003 
<DEB> 0000003255 -------------- 0x0x2ff06017400 cpu ---               QH_THRD bp_queue             0x2ff08806600 holder 0x2ff07603000 
<DEB> 0000003274 -------------- 0x0x2ff06017400 cpu ---               QH_THRD hp_queue             0x2ff08806c00 holder 0x2ff07603000 
<DEB> 0000003295 -------------- 0x0x2ff06017400 cpu ---               QH_THRD np_queue             0x2ff08807200 holder 0x2ff07603000 
<DEB> 0000003315 -------------- 0x0x2ff06017400 cpu ---               QH_THRD lp_queue             0x2ff07a18200 holder 0x2ff07603000 
<DEB> 0000003627 -------------- 0x0x2ff06012000 cpu ---               SPQUEUE create_thread        pool default hint HINT_THREAD dest D 00 Q 000 this D 00 Q 000 run_now OVERRIDE  0 ??? 1285040760 
<DEB> 0000003673 -------------- 0x0x2ff06012000 cpu ---               QH_THRD create_thread        D 00 Q 000 TM 000 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 thread_priority::normal run_now  0 
<DEB> 0000003819 -------------- 0x0x2ff06016d00 cpu ---               QH_THRD create_thread_object new D 00 Q 002 TM 000 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" 
<DEB> 0000003908 -------------- 0x0x2ff06016d00 cpu ---               QH_THRD map add              D 00 Q 002 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" 
<DEB> 0000003968 -------------- 0x0x2ff06016d00 cpu ---               _TQ_MC_ add_new              stealing 1 0x2ff0848e000 "<unknown>" 
<DEB> 0000004009 -------------- 0x0x2ff06016d00 cpu ---               _TQ_MC_ schedule_work        stealing 1 D 00 Q 002 n 0000 w 0001 0x2ff0848e000 "<unknown>" 
<DEB> 0000004058 -------------- 0x0x2ff06016600 cpu ---               _TQ_MC_ get_next_thread      stealing 1 D 00 Q 002 n 0000 w 0000 0x2ff0848e000 "<unknown>" 
<DEB> 0000004057 -------------- 0x0x2ff06016d00 cpu ---               QH_NUMA add_new              added 01 D 00 Q 000 Qidx 002 stolen from D 00 Q 000 TM 000 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 
<DEB> 0000004109 -------------- 0x0x2ff06016d00 cpu ---               SPQUEUE wait_or_add_new      steal_high_priority_first NP/LP taken D 00 Q 002 
<DEB> 0000004093 -------------- 0x0x2ff06016600 cpu ---               QH_THRD next_thread_NP       D 00 Q 002 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" thread_priority::normal 
<DEB> 0000004138 -------------- 0x0x2ff06016600 cpu ---               QH_NUMA get_next             D 00 Q 002 Qidx 001 stolen from D 00 Q 002 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" 
<DEB> 0000004170 -------------- 0x0x2ff06016600 cpu ---               SPQUEUE SBF-get_next_thread  steal_high_priority_first NP/LP taken D 00 Q 001 
HPX using threads = 4
Test 1D

<DEB> 0000005904 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A allocator 
<DEB> 0000005922 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A Copy allocator 
<DEB> 0000281967 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A alloc:user(bind)     0x2ff09200000 
<DEB> 0000282045 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A Pool numa mask       00000001 
<DEB> 0000282073 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A Node mask            0  is  0x00000001 
<DEB> 0000282103 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A Launching First-Touch tasks 
<DEB> 0000282120 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A Launching First-Touch task for domain  00   0x00000001 
<DEB> 0000282142 0x2ff0848e000 0x0x2ff06016600 cpu ---               GP_EXEC async execute        
         Function    :  N3hpx6detail5boundIMNS_7compute4host22numa_binding_allocatorIdEEKFvPdmNSt3__110shared_ptrINS3_19numa_binding_helperIdEEEEmRKNS7_6vectorINS8_INS_7threads24hpx_hwloc_bitmap_wrapperEEENS7_9allocatorISF_EEEEENS_4util6pack_cImJLm0ELm1ELm2ELm3ELm4ELm5EEEEJPKS5_S6_mSB_NS0_11placeholderILm1EEESI_EEE 
         Arguments   :  unsigned long 
         Result      :  void 
         Numa Hint   :  N3hpx8parallel9execution14pool_numa_hintIJNS1_26numa_binding_allocator_tagEEEE 
<DEB> 0000282199 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A pool_numa_hint       allocator returns domain  0 
<DEB> 0000282234 0x2ff0848e000 0x0x2ff06016600 cpu ---               GP_EXEC async_schedule       domain  0 
<DEB> 0000282256 0x2ff0848e000 0x0x2ff06016600 cpu ---               GP_EXEC triggering post      domain  0 
<DEB> 0000282286 0x2ff0848e000 0x0x2ff06016600 cpu ---               SPQUEUE create_thread        pool default hint HINT_NUMA   dest D 00 Q 001 this D 00 Q 001 run_now 1 ??? 3294386711992 
<DEB> 0000282319 0x2ff0848e000 0x0x2ff06016600 cpu ---               QH_THRD create_thread        D 00 Q 001 TM 000 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 thread_priority::bound run_now  1 
<DEB> 0000282368 0x2ff0848e000 0x0x2ff06016600 cpu ---               QH_THRD create_thread_object new D 00 Q 001 TM 000 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff07ec6000 "<unknown>" 
<DEB> 0000283772 0x2ff0848e000 0x0x2ff06016600 cpu ---               QH_THRD map add              D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff07ec6000 "<unknown>" 
<DEB> 0000283820 0x2ff0848e000 0x0x2ff06016600 cpu ---               _TQ_MC_ schedule_work        stealing 0 D 00 Q 001 n 0000 w 0001 0x2ff07ec6000 "<unknown>" 
<DEB> 0000284061 0x2ff0848e000 0x0x2ff06016600 cpu ---               NUM_B_A First-Touch          add task future to vector for domain  00   0x00000001 
<DEB> 0000284241 -------------- 0x0x2ff06016600 cpu ---               _TQ_MC_ get_next_thread      stealing 0 D 00 Q 001 n 0000 w 0000 0x2ff07ec6000 "<unknown>" 
<DEB> 0000284272 -------------- 0x0x2ff06016600 cpu ---               QH_THRD next_thread_BP       D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff07ec6000 "<unknown>" thread_priority::bound 
<DEB> 0000284301 -------------- 0x0x2ff06016600 cpu ---               QH_NUMA HP/BP get_next       D 00 Q 001 Qidx 001 taken D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff07ec6000 "<unknown>" 
<DEB> 0000284333 -------------- 0x0x2ff06016600 cpu ---               SPQUEUE SBF-get_next_thread  steal_high_priority_first BP/HP taken D 00 Q 001 
<DEB> 0000284373 0x2ff07ec6000 0x0x2ff06016600 cpu ---               NUM_B_A Touch pages          for numa  00 
<DEB> 0000289091 0x2ff07ec6000 0x0x2ff06016600 cpu ---               QH_THRD worker_next          Rollover counter  0001 0001 workers 0004 
<DEB> 0000289144 0x2ff07ec6000 0x0x2ff06016600 cpu ---               SPQUEUE schedule_thread      assign_work_round_robin thread_num 2 0x2ff0848e000 "<unknown>" 
<DEB> 0000289165 0x2ff07ec6000 0x0x2ff06016600 cpu ---               SPQUEUE thread scheduled     HINT_NONE   Thread 002 D 00 Q 001 
<DEB> 0000289184 0x2ff07ec6000 0x0x2ff06016600 cpu ---               QH_THRD schedule_thread      D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" queueing thread_priority::normal 
<DEB> 0000289215 0x2ff07ec6000 0x0x2ff06016600 cpu ---               _TQ_MC_ schedule_work        stealing 0 D 00 Q 001 n 0000 w 0001 0x2ff0848e000 "<unknown>" 
<DEB> 0000289260 -------------- 0x0x2ff06015f00 cpu ---               _TQ_MC_ get_next_thread      stealing 1 D 00 Q 001 n 0000 w 0000 0x2ff0848e000 "<unknown>" 
<DEB> 0000289321 -------------- 0x0x2ff06015f00 cpu ---               QH_THRD next_thread_NP       D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" thread_priority::normal 
<DEB> 0000289380 -------------- 0x0x2ff06016600 cpu ---               SPQUEUE destroy_thread       xthread 0 task owned by D 00 Q 001 this thread D 00 Q 001 0x2ff07ec6000 "<unknown>" 
<DEB> 0000289395 -------------- 0x0x2ff06015f00 cpu ---               QH_NUMA get_next             D 00 Q 001 Qidx 000 stolen from D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff0848e000 "<unknown>" 
<DEB> 0000289410 -------------- 0x0x2ff06016600 cpu ---               QH_THRD destroy              terminated_items push xthread 0 D 00 Q 001 TM 001 [BP n 000 w 000] [HP n 000 w 000] [NP n 000 w 000] [LP n 000 w 000] T 000 0x2ff07ec6000 "<unknown>" 
<DEB> 0000289436 -------------- 0x0x2ff06015f00 cpu ---               SPQUEUE SBF-get_next_thread  steal_high_priority_first NP/LP taken D 00 Q 000 
<DEB> 0000289516 0x2ff0848e000 0x0x2ff06015f00 cpu ---               NUM_B_A First-Touch          Done tasks 
{config}:
Core library:
  HPX_AGAS_LOCAL_CACHE_SIZE=4096
  HPX_HAVE_MALLOC=system
  HPX_PARCEL_MAX_CONNECTIONS=512
  HPX_PARCEL_MAX_CONNECTIONS_PER_LOCALITY=4
  HPX_PREFIX (configured)=/usr/ports/devel/hpx/work/.build
  HPX_PREFIX=/usr/ports/devel/hpx/work/.build

  HPX_FILESYSTEM_WITH_BOOST_FILESYSTEM_COMPATIBILITY=OFF
  HPX_ITERATOR_SUPPORT_WITH_BOOST_ITERATOR_TRAVERSAL_TAG_COMPATIBILITY=OFF
  HPX_WITH_AGAS_DUMP_REFCNT_ENTRIES=OFF
  HPX_WITH_APEX=OFF
  HPX_WITH_ASYNC_MPI=OFF
  HPX_WITH_ATTACH_DEBUGGER_ON_TEST_FAILURE=OFF
  HPX_WITH_AUTOMATIC_SERIALIZATION_REGISTRATION=ON
  HPX_WITH_COROUTINE_COUNTERS=OFF
  HPX_WITH_DISTRIBUTED_RUNTIME=ON
  HPX_WITH_GENERIC_CONTEXT_COROUTINES=ON
  HPX_WITH_IO_POOL=ON
  HPX_WITH_ITTNOTIFY=OFF
  HPX_WITH_LOGGING=ON
  HPX_WITH_NETWORKING=ON
  HPX_WITH_PAPI=OFF
  HPX_WITH_PARALLEL_TESTS_BIND_NONE=OFF
  HPX_WITH_PARCELPORT_ACTION_COUNTERS=OFF
  HPX_WITH_PARCELPORT_COUNTERS=OFF
  HPX_WITH_PARCELPORT_GASNET=OFF
  HPX_WITH_PARCELPORT_LCI=OFF
  HPX_WITH_PARCELPORT_LIBFABRIC=OFF
  HPX_WITH_PARCELPORT_MPI=OFF
  HPX_WITH_PARCELPORT_TCP=ON
  HPX_WITH_PARCEL_COALESCING=ON
  HPX_WITH_PARCEL_PROFILING=OFF
  HPX_WITH_SANITIZERS=OFF
  HPX_WITH_SCHEDULER_LOCAL_STORAGE=OFF
  HPX_WITH_SPINLOCK_DEADLOCK_DETECTION=OFF
  HPX_WITH_STACKTRACES=ON
  HPX_WITH_TESTS_DEBUG_LOG=OFF
  HPX_WITH_THREAD_BACKTRACE_ON_SUSPENSION=OFF
  HPX_WITH_THREAD_CREATION_AND_CLEANUP_RATES=OFF
  HPX_WITH_THREAD_CUMULATIVE_COUNTS=ON
  HPX_WITH_THREAD_DEBUG_INFO=OFF
  HPX_WITH_THREAD_DESCRIPTION_FULL=OFF
  HPX_WITH_THREAD_GUARD_PAGE=ON
  HPX_WITH_THREAD_IDLE_RATES=OFF
  HPX_WITH_THREAD_LOCAL_STORAGE=OFF
  HPX_WITH_THREAD_MANAGER_IDLE_BACKOFF=ON
  HPX_WITH_THREAD_QUEUE_WAITTIME=OFF
  HPX_WITH_THREAD_STACK_MMAP=ON
  HPX_WITH_THREAD_STEALING_COUNTS=OFF
  HPX_WITH_THREAD_TARGET_ADDRESS=OFF
  HPX_WITH_TIMER_POOL=ON
  HPX_WITH_TUPLE_RVALUE_SWAP=ON
  HPX_WITH_VALGRIND=OFF
  HPX_WITH_VERIFY_LOCKS=OFF
  HPX_WITH_VERIFY_LOCKS_BACKTRACE=OFF
  HPX_WITH_WORK_REQUESTING_SCHEDULERS=ON

Module allocator_support:
  HPX_ALLOCATOR_SUPPORT_WITH_CACHING=ON

Module command_line_handling_local:
  HPX_COMMAND_LINE_HANDLING_LOCAL_WITH_JSON_CONFIGURATION_FILES=OFF

Module coroutines:
  HPX_COROUTINES_WITH_SWAP_CONTEXT_EMULATION=OFF
  HPX_COROUTINES_WITH_THREAD_SCHEDULE_HINT_RUNS_AS_CHILD=OFF

Module datastructures:
  HPX_DATASTRUCTURES_WITH_ADAPT_STD_TUPLE=ON
  HPX_DATASTRUCTURES_WITH_ADAPT_STD_VARIANT=OFF

Module logging:
  HPX_LOGGING_WITH_SEPARATE_DESTINATIONS=ON

Module serialization:
  HPX_SERIALIZATION_WITH_ALLOW_CONST_TUPLE_MEMBERS=OFF
  HPX_SERIALIZATION_WITH_ALLOW_RAW_POINTER_SERIALIZATION=OFF
  HPX_SERIALIZATION_WITH_ALL_TYPES_ARE_BITWISE_SERIALIZABLE=OFF
  HPX_SERIALIZATION_WITH_BOOST_TYPES=OFF
  HPX_SERIALIZATION_WITH_SUPPORTS_ENDIANESS=OFF

Module topology:
  HPX_TOPOLOGY_WITH_ADDITIONAL_HWLOC_TESTING=OFF

{version}: V1.10.0 (AGAS: V3.0), Git: unknown
{boost}: V1.84.0
{build-type}: debug
{date}: May 31 2024 21:16:39
{platform}: FreeBSD 14
{compiler}: Clang version 18.1.5 (https://github.com/llvm/llvm-project.git llvmorg-18.1.5-0-g617a15a9eac9)
{stdlib}: libc++ version 180100

{stack-trace}: 20 frames:
<DEB> 0000290387 0x2ff0848e000 0x0x2ff06015f00 cpu ---               SPQUEUE enumerate_threads    
{what}: Illegal instruction

The crash occurs here:

36│ void mutex::unlock() noexcept {
 37│   int ec = __libcpp_mutex_unlock(&__m_);
 38│   (void)ec;
 39├─> _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(
 40│       ec == 0, "call to mutex::unlock failed. A possible reason is that the mutex wasn't locked");
 41│ }

Stack trace:

#0  std::__1::mutex::unlock (this=<optimized out>) at /disk-samsung/freebsd-src/contrib/llvm-project/libcxx/src/mutex.cpp:39
#1  0x00000000002ab2ca in std::__1::unique_lock<std::__1::mutex>::~unique_lock[abi:se180100]() (this=0x321ffd48) at /usr/include/c++/v1/__mutex/unique_lock.h:63
#2  0x00000000002aa3dd in hpx::compute::host::numa_binding_allocator<double>::initialize_pages (this=0x322004b0, p=0x32800000, n=524288)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/compute_local/include/hpx/compute_local/host/numa_binding_allocator.hpp:486
#3  0x00000000002a9ca8 in hpx::compute::host::numa_binding_allocator<double>::allocate (this=0x322004b0, n=524288)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/compute_local/include/hpx/compute_local/host/numa_binding_allocator.hpp:326
#4  0x00000000002a981d in std::__1::__allocate_at_least[abi:se180100]<hpx::compute::host::numa_binding_allocator<double> >(hpx::compute::host::numa_binding_allocator<double>&, unsigned long) (__alloc=..., __n=524288) at /usr/include/c++/v1/__memory/allocate_at_least.h:55
#5  0x00000000002a92e7 in std::__1::__split_buffer<double, hpx::compute::host::numa_binding_allocator<double>&>::__split_buffer (this=0x32200220, __cap=524288, __start=0, __a=...)
    at /usr/include/c++/v1/__split_buffer:343
#6  0x00000000002a884d in std::__1::vector<double, hpx::compute::host::numa_binding_allocator<double> >::reserve (this=0x32200498, __n=524288) at /usr/include/c++/v1/vector:1425
#7  0x00000000002a00e5 in test_binding<linear_numa_binder, double, hpx::compute::host::numa_binding_allocator<double> > (numa_binder=..., allocator=...)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/compute_local/tests/unit/numa_allocator.cpp:77
#8  0x000000000029e379 in hpx_main (vm=...) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/compute_local/tests/unit/numa_allocator.cpp:191
#9  0x00000000003362fd in std::__1::__invoke[abi:se180100]<int (*&)(hpx::program_options::variables_map&), hpx::program_options::variables_map&>(int (*&)(hpx::program_options::variables_map&), hpx::program_options::variables_map&) (__f=@0x2f697618: 0x29df30 <hpx_main(hpx::program_options::variables_map&)>, __args=...) at /usr/include/c++/v1/__type_traits/invoke.h:344
#10 0x00000000003362ad in std::__1::__invoke_void_return_wrapper<int, false>::__call[abi:se180100]<int (*&)(hpx::program_options::variables_map&), hpx::program_options::variables_map&>(int (*&)(hpx::program_options::variables_map&), hpx::program_options::variables_map&) (__args=..., __args=...) at /usr/include/c++/v1/__type_traits/invoke.h:411
#11 0x0000000000336285 in std::__1::__function::__alloc_func<int (*)(hpx::program_options::variables_map&), std::__1::allocator<int (*)(hpx::program_options::variables_map&)>, int (hpx::program_options::variables_map&)>::operator()[abi:se180100](hpx::program_options::variables_map&) (this=0x2f697618, __arg=...) at /usr/include/c++/v1/__functional/function.h:169
#12 0x0000000000335441 in std::__1::__function::__func<int (*)(hpx::program_options::variables_map&), std::__1::allocator<int (*)(hpx::program_options::variables_map&)>, int (hpx::program_options::variables_map&)>::operator()(hpx::program_options::variables_map&) (this=0x2f697610, __arg=...) at /usr/include/c++/v1/__functional/function.h:311
#13 0x00000000002a435a in std::__1::__function::__value_func<int (hpx::program_options::variables_map&)>::operator()[abi:se180100](hpx::program_options::variables_map&) const (
    this=0x2f697610, __args=...) at /usr/include/c++/v1/__functional/function.h:428
#14 0x00000000002a430d in std::__1::function<int (hpx::program_options::variables_map&)>::operator()(hpx::program_options::variables_map&) const (this=0x2f697610, __arg=...)
    at /usr/include/c++/v1/__functional/function.h:981
#15 0x00000000002a41f5 in hpx::util::detail::callable_vtable<int (hpx::program_options::variables_map&)>::_invoke<std::__1::function<int (hpx::program_options::variables_map&)> >(void*, hpx::program_options::variables_map&) (f=0x2f697610, vs=...) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/detail/vtable/callable_vtable.hpp:88
#16 0x000000002db49866 in hpx::util::detail::basic_function<int (hpx::program_options::variables_map&), true, false>::operator()(hpx::program_options::variables_map&) const (
    this=0x2f63ee00, vs=...) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/detail/basic_function.hpp:236
#17 hpx::detail::bound_front<hpx::function<int (hpx::program_options::variables_map&), false>, hpx::util::pack_c<unsigned long, 0ul>, hpx::program_options::variables_map>::operator()<>() &
    (this=0x2f63ee00) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/bind_front.hpp:88
#18 0x000000002db4973d in hpx::util::detail::callable_vtable<int ()>::_invoke<hpx::detail::bound_front<hpx::function<int (hpx::program_options::variables_map&), false>, hpx::util::pack_c<unsigned long, 0ul>, hpx::program_options::variables_map> >(void*) (f=0x2f63ee00)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/detail/vtable/callable_vtable.hpp:88
#19 0x000000002e8471a3 in hpx::util::detail::basic_function<int (), true, false>::operator()() const (this=0x2f6dddb8)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/detail/basic_function.hpp:236
#20 hpx::runtime::run_helper(hpx::function<int (), false> const&, int&, bool, void (*)(unsigned long)) (this=0x2f62b800, func=..., result=@0x2f62b9c8: 0, call_startup=true, 
    handle_print_bind=0x2e8465b0 <hpx::detail::handle_print_bind(unsigned long)>) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/runtime_local/src/runtime_local.cpp:1426
#21 0x000000002e85afa7 in hpx::util::detail::invoke_mem_fun<std::__1::pair<hpx::threads::thread_schedule_state, hpx::threads::thread_id> (hpx::function<int (), false> const&, int&, bool, void (*)(unsigned long)), hpx::runtime>::operator()<hpx::runtime*&, hpx::function<int (), false>&, int&, bool&, void (*&)(unsigned long)>(hpx::runtime*&, hpx::function<int (), false>&, int&, bool&, void (*&)(unsigned long)) const (this=0x32200cd8, t1=@0x2f6dddb0: 0x2f62b800, tn=@0x2f6dddf0: 0x2e8465b0 <hpx::detail::handle_print_bind(unsigned long)>, 
    tn=@0x2f6dddf0: 0x2e8465b0 <hpx::detail::handle_print_bind(unsigned long)>, tn=@0x2f6dddf0: 0x2e8465b0 <hpx::detail::handle_print_bind(unsigned long)>, 
    tn=@0x2f6dddf0: 0x2e8465b0 <hpx::detail::handle_print_bind(unsigned long)>) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/tag_invoke/include/hpx/functional/detail/invoke.hpp:110
#22 0x000000002e85ae86 in hpx::detail::bound<std::__1::pair<hpx::threads::thread_schedule_state, hpx::threads::thread_id> (hpx::runtime::*)(hpx::function<int (), false> const&, int&, bool, void (*)(unsigned long)), hpx::util::pack_c<unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul>, hpx::runtime*, hpx::function<int (), false>, int&, bool, void (*)(unsigned long)>::operator()<hpx::threads::thread_restart_state>(hpx::threads::thread_restart_state&&) & (this=0x2f6ddda0, vs=@0x32200d47: hpx::threads::thread_restart_state::signaled)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/bind.hpp:187
#23 0x000000002e85ad43 in hpx::threads::detail::thread_function<hpx::detail::bound<std::__1::pair<hpx::threads::thread_schedule_state, hpx::threads::thread_id> (hpx::runtime::*)(hpx::function<int (), false> const&, int&, bool, void (*)(unsigned long)), hpx::util::pack_c<unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul>, hpx::runtime*, hpx::function<int (), false>, int&, bool, void (*)(
--Type <RET> for more, q to quit, c to continue without paging--
unsigned long)> >::operator()(hpx::threads::thread_restart_state) (this=0x2f6ddda0)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/threading_base/include/hpx/threading_base/register_thread.hpp:35
#24 0x000000002e85aceb in hpx::util::detail::callable_vtable<std::__1::pair<hpx::threads::thread_schedule_state, hpx::threads::thread_id> (hpx::threads::thread_restart_state)>::_invoke<hpx::threads::detail::thread_function<hpx::detail::bound<std::__1::pair<hpx::threads::thread_schedule_state, hpx::threads::thread_id> (hpx::runtime::*)(hpx::function<int (), false> const&, int&, bool, void (*)(unsigned long)), hpx::util::pack_c<unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul>, hpx::runtime*, hpx::function<int (), false>, int&, bool, void (*)(unsigned long)> > >(void*, hpx::threads::thread_restart_state&&) (f=0x2f6ddda0, vs=@0x32200ec7: hpx::threads::thread_restart_state::signaled)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/detail/vtable/callable_vtable.hpp:88
#25 0x000000002e6f9615 in hpx::util::detail::basic_function<std::__1::pair<hpx::threads::thread_schedule_state, hpx::threads::thread_id> (hpx::threads::thread_restart_state), false, false>::operator()(hpx::threads::thread_restart_state) const (this=0x31e8b108, vs=hpx::threads::thread_restart_state::signaled)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/functional/include/hpx/functional/detail/basic_function.hpp:236
#26 hpx::threads::coroutines::detail::coroutine_impl::operator() (this=0x31e8b050) at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/coroutines/src/detail/coroutine_impl.cpp:81
#27 0x00000000002f3d93 in hpx::threads::coroutines::detail::generic_context::trampoline<hpx::threads::coroutines::detail::coroutine_impl> (tr=...)
    at /usr/ports/devel/hpx/work/hpx-1.10.0/libs/core/coroutines/include/hpx/coroutines/detail/context_generic_context.hpp:185
#28 0x000000002bfcdcef in make_fcontext () from /usr/local/lib/libboost_context.so.1.84.0
Backtrace stopped: Cannot access memory at address 0x32201000

Specifications

  • HPX Version: 1.10.0
  • Platform (compiler, OS): clang-18.1.5, FreeBSD 14.0
@yurivict yurivict changed the title The test executable numa_allocator_test fails with an asserttion The test executable numa_allocator_test fails with an assertion Jun 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant