Skip to content

Instantly share code, notes, and snippets.

@mszabo-wikia
Created December 10, 2024 12:42
Show Gist options
  • Select an option

  • Save mszabo-wikia/47916c5655deffdb95332e972a52caf8 to your computer and use it in GitHub Desktop.

Select an option

Save mszabo-wikia/47916c5655deffdb95332e972a52caf8 to your computer and use it in GitHub Desktop.
(gdb) info threads
Id Target Id Frame
* 1 Thread 0x7f7b4cce1e00 (LWP 211878) "mcrouter" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
2 Thread 0x7f7b43fff6c0 (LWP 211882) "mcr-cpuaux-0" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
3 Thread 0x7f7b49e0a6c0 (LWP 211879) "IOThreadPool0" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
(gdb) thread 1
[Switching to thread 1 (Thread 0x7f7b4cce1e00 (LWP 211878))]
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
38 cmpq $-4095, %rax /* Check %rax for error. */
(gdb) bt
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x0000000000adb7ad in folly::detail::(anonymous namespace)::nativeFutexWaitImpl (addr=addr@entry=0x7f7b41fda018, expected=expected@entry=2, absSystemTime=absSystemTime@entry=0x0, absSteadyTime=absSteadyTime@entry=0x0,
waitMask=waitMask@entry=4294967295) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/detail/Futex.cpp:126
#2 folly::detail::futexWaitImpl (futex=futex@entry=0x7f7b41fda018, expected=expected@entry=2, absSystemTime=absSystemTime@entry=0x0, absSteadyTime=absSteadyTime@entry=0x0, waitMask=waitMask@entry=4294967295)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/detail/Futex.cpp:254
#3 0x0000000000affa7a in folly::detail::futexWaitUntil<std::atomic<unsigned int>, std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (
deadline=std::chrono::_V2::steady_clock time_point = { 9223372036854775807ns }, futex=0x7f7b41fda018, expected=2, waitMask=4294967295)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/detail/Futex-inl.h:118
#4 folly::detail::MemoryIdler::futexWaitUntil<std::atomic<unsigned int>, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (fut=std::atomic<unsigned int> = { 2 }, expected=expected@entry=2, deadline=std::chrono::_V2::steady_clock time_point = { 9223372036854775807ns }, waitMask=waitMask@entry=4294967295,
idleTimeout=std::chrono::duration = { 5000000000ns }, stackToRetain=stackToRetain@entry=1024, timeoutVariationFrac=timeoutVariationFrac@entry=0.5)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/detail/MemoryIdler.h:166
#5 0x0000000000b00163 in folly::SaturatingSemaphore<true, std::atomic>::tryWaitSlow<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=this@entry=0x7f7b41fda018,
deadline=std::chrono::_V2::steady_clock time_point = { 9223372036854775807ns }, opt=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/synchronization/SaturatingSemaphore.h:312
#6 0x0000000000b00746 in folly::SaturatingSemaphore<true, std::atomic>::try_wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=0x7f7b41fda018,
deadline=std::chrono::_V2::steady_clock time_point = { 9223372036854775807ns }, opt=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/synchronization/SaturatingSemaphore.h:173
#7 folly::detail::LifoSemBase<folly::SaturatingSemaphore<true, std::atomic>, std::atomic>::try_wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (
this=this@entry=0x26d1c4c0, deadline=std::chrono::_V2::steady_clock time_point = { 9223372036854775807ns }) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/synchronization/LifoSem.h:528
#8 0x0000000000afd2a3 in folly::detail::LifoSemBase<folly::SaturatingSemaphore<true, std::atomic>, std::atomic>::wait (this=0x26d1c4c0)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/synchronization/LifoSem.h:497
#9 folly::ThreadPoolExecutor::StoppedThreadQueue::take (this=this@entry=0x26d1c480) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/ThreadPoolExecutor.cpp:412
#10 0x0000000000afd3ba in folly::ThreadPoolExecutor::joinStoppedThreads (this=this@entry=0x26d1c400, n=n@entry=1)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/ThreadPoolExecutor.cpp:274
#11 0x0000000000afd958 in folly::ThreadPoolExecutor::stopAndJoinAllThreads (this=0x26d1c400, isJoin=isJoin@entry=false)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/ThreadPoolExecutor.cpp:290
#12 0x0000000000afdd49 in folly::ThreadPoolExecutor::stop (this=<optimized out>) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/ThreadPoolExecutor.cpp:297
#13 0x0000000000bd297a in folly::CPUThreadPoolExecutor::~CPUThreadPoolExecutor (this=this@entry=0x26d1c400, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/CPUThreadPoolExecutor.cpp:181
#14 0x0000000000bd2a99 in folly::CPUThreadPoolExecutor::~CPUThreadPoolExecutor (this=0x26d1c400, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/CPUThreadPoolExecutor.cpp:190
#15 0x0000000000fc9d8b in std::default_delete<folly::CPUThreadPoolExecutor>::operator() (this=<optimized out>, __ptr=<optimized out>) at /usr/include/c++/14/bits/unique_ptr.h:87
#16 std::unique_ptr<folly::CPUThreadPoolExecutor, std::default_delete<folly::CPUThreadPoolExecutor> >::~unique_ptr (this=0x26d23910, __in_chrg=<optimized out>) at /usr/include/c++/14/bits/unique_ptr.h:398
#17 facebook::memcache::mcrouter::AuxiliaryCPUThreadPool::~AuxiliaryCPUThreadPool (this=0x26d23910, __in_chrg=<optimized out>) at /home/mszabo/Documents/mcrouter/mcrouter/lib/AuxiliaryCPUThreadPool.h:22
#18 folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}::operator()(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*) const (__closure=<optimized out>, v=0x26d23910)
at /home/mszabo/Documents/fbcode-scratch/installed/folly/include/folly/Singleton.h:804
#19 folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}::operator()(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*) const (__closure=<optimized out>, v=0x26d23910)
at /home/mszabo/Documents/fbcode-scratch/installed/folly/include/folly/Singleton.h:804
#20 std::__invoke_impl<void, folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}&, facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*>(std::__invoke_other, folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}&, facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*&&) (__f=...) at /usr/include/c++/14/bits/invoke.h:61
#21 std::__invoke_r<void, folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}&, facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*>(folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}&, facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*&&) (__fn=...) at /usr/include/c++/14/bits/invoke.h:111
#22 std::_Function_handler<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*), folly::Singleton<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool, folly::detail::DefaultTag, folly::detail::DefaultTag>::getTeardownFunc(std::function<void (facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>)::{lambda(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)#1}>::_M_invoke(std::_Any_data const&, facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*&&) (__functor=..., __args#0=<optimized out>) at /usr/include/c++/14/bits/std_function.h:290
#23 0x000000000051d4fb in std::function<void(facebook::memcache::mcrouter::AuxiliaryCPUThreadPool*)>::operator() (this=0x26cfede0, __args#0=<optimized out>) at /usr/include/c++/14/bits/std_function.h:591
#24 folly::detail::SingletonHolder<facebook::memcache::mcrouter::AuxiliaryCPUThreadPool>::destroyInstance (this=0x26cfe510) at /home/mszabo/Documents/fbcode-scratch/installed/folly/include/folly/Singleton-inl.h:196
--Type <RET> for more, q to quit, c to continue without paging--c
#25 0x0000000000abed2a in folly::SingletonVault::destroyInstances (this=0x26cf1de0) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/Singleton.cpp:392
#26 0x00007f7b4c228441 in __run_exit_handlers (status=1, listp=0x7f7b4c3f6680 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:108
#27 0x00007f7b4c22850e in __GI_exit (status=<optimized out>) at exit.c:138
#28 0x00000000005596f9 in facebook::memcache::mcrouter::runServer<facebook::memcache::MemcacheRouterInfo, facebook::memcache::MemcacheRequestHandler> (mcrouterOpts=..., standaloneOpts=..., preRunCb=...)
at /home/mszabo/Documents/mcrouter/./mcrouter/Server-inl.h:591
#29 0x00000000004cff72 in facebook::memcache::mcrouter::(anonymous namespace)::run<facebook::memcache::MemcacheRouterInfo, facebook::memcache::MemcacheRequestHandler> (libmcrouterOptions=..., standaloneOptions=...,
preRunCb=...) at /home/mszabo/Documents/mcrouter/mcrouter/StandaloneUtils.cpp:204
#30 facebook::memcache::mcrouter::runStandaloneMcrouter (cmdLineOpts=..., libmcrouterOptions=..., standaloneOptions=..., preRunCb=...) at /home/mszabo/Documents/mcrouter/mcrouter/StandaloneUtils.cpp:558
#31 0x00000000004b57bc in main (argc=<optimized out>, argv=<optimized out>) at /home/mszabo/Documents/mcrouter/mcrouter/main.cpp:52
(gdb) thread 2
[Switching to thread 2 (Thread 0x7f7b43fff6c0 (LWP 211882))]
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
38 cmpq $-4095, %rax /* Check %rax for error. */
(gdb) bt
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007f7b4c44582f in std::__atomic_futex_unsigned_base::_M_futex_wait_until (this=this@entry=0x26d19f70, __addr=__addr@entry=0x26d19f70, __val=2147483648, __has_timeout=__has_timeout@entry=false, __s=...,
__s@entry=std::chrono::duration = { 0s }, __ns=..., __ns@entry=std::chrono::duration = { 0ns }) at ../../../../../libstdc++-v3/src/c++11/futex.cc:122
#2 0x0000000000b7fb8a in std::__atomic_futex_unsigned<2147483648u>::_M_load_and_test_until (this=<optimized out>, __assumed=<optimized out>, __operand=<optimized out>, __equal=<optimized out>, __mo=<optimized out>,
__has_timeout=<optimized out>, __s=..., __ns=...) at /usr/include/c++/14/bits/atomic_futex.h:109
#3 std::__atomic_futex_unsigned<2147483648u>::_M_load_and_test (this=<optimized out>, __assumed=<optimized out>, __operand=<optimized out>, __equal=<optimized out>, __mo=<optimized out>)
at /usr/include/c++/14/bits/atomic_futex.h:158
#4 std::__atomic_futex_unsigned<2147483648u>::_M_load_when_equal (this=0x26d19f70, __val=1, __mo=std::memory_order_acquire) at /usr/include/c++/14/bits/atomic_futex.h:212
#5 std::__future_base::_State_baseV2::wait (this=0x26d19f60) at /usr/include/c++/14/future:360
#6 std::__basic_future<void>::_M_get_result (this=0x7f7b43ffe4a0) at /usr/include/c++/14/future:748
#7 std::future<void>::get (this=0x7f7b43ffe4a0) at /usr/include/c++/14/future:920
#8 folly::VirtualEventBase::~VirtualEventBase (this=0x26d160d0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/VirtualEventBase.cpp:64
#9 0x0000000000b80009 in folly::VirtualEventBase::~VirtualEventBase (this=0x26d160d0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/VirtualEventBase.cpp:65
#10 0x000000000050cefe in std::default_delete<folly::VirtualEventBase>::operator() (this=<optimized out>, __ptr=<optimized out>) at /usr/include/c++/14/bits/unique_ptr.h:87
#11 std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> >::~unique_ptr (this=0x26d3d990, __in_chrg=<optimized out>) at /usr/include/c++/14/bits/unique_ptr.h:398
#12 std::destroy_at<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> > > (__location=0x26d3d990) at /usr/include/c++/14/bits/stl_construct.h:88
#13 std::_Destroy<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> > > (__pointer=0x26d3d990) at /usr/include/c++/14/bits/stl_construct.h:149
#14 std::_Destroy_aux<false>::__destroy<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> >*> (__first=0x26d3d990, __last=<optimized out>) at /usr/include/c++/14/bits/stl_construct.h:163
#15 std::_Destroy<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> >*> (__first=<optimized out>, __last=<optimized out>) at /usr/include/c++/14/bits/stl_construct.h:196
#16 std::_Destroy<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> >*, std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> > > (__first=<optimized out>,
__last=<optimized out>) at /usr/include/c++/14/bits/alloc_traits.h:944
#17 std::vector<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> >, std::allocator<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> > > >::_M_erase_at_end (this=0x26d2efa8, __pos=0x26d3d990) at /usr/include/c++/14/bits/stl_vector.h:1947
#18 std::vector<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> >, std::allocator<std::unique_ptr<folly::VirtualEventBase, std::default_delete<folly::VirtualEventBase> > > >::clear (
this=0x26d2efa8) at /usr/include/c++/14/bits/stl_vector.h:1608
#19 facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::shutdownImpl (this=0x26d2e7c0) at /home/mszabo/Documents/mcrouter/./mcrouter/CarbonRouterInstance-inl.h:403
#20 0x00000000005206e5 in facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::~CarbonRouterInstance (this=0x26d2e7c0, __in_chrg=<optimized out>)
at /home/mszabo/Documents/mcrouter/./mcrouter/CarbonRouterInstance-inl.h:422
#21 0x0000000000520949 in facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::~CarbonRouterInstance (this=0x26d2e7c0, __in_chrg=<optimized out>)
at /home/mszabo/Documents/mcrouter/./mcrouter/CarbonRouterInstance-inl.h:420
#22 facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::createRaw(facebook::memcache::McrouterOptions, std::shared_ptr<folly::IOThreadPoolExecutorBase>)::{lambda(facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>*)#1}::operator()(facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>*) const (__closure=<optimized out>,
inst=<optimized out>) at /home/mszabo/Documents/mcrouter/./mcrouter/CarbonRouterInstance-inl.h:141
#23 std::unique_ptr<facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>, facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::createRaw(facebook::memcache::McrouterOptions, std::shared_ptr<folly::IOThreadPoolExecutorBase>)::{lambda(facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>*)#1}>::~unique_ptr() (this=<optimized out>,
__in_chrg=<optimized out>) at /usr/include/c++/14/bits/unique_ptr.h:398
#24 facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::createRaw(facebook::memcache::McrouterOptions, std::shared_ptr<folly::IOThreadPoolExecutorBase>)::{lambda()#1}::~shared_ptr() (
this=<optimized out>, __in_chrg=<optimized out>) at /home/mszabo/Documents/mcrouter/./mcrouter/CarbonRouterInstance-inl.h:181
#25 folly::detail::function::DispatchSmall::exec<facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::createRaw(facebook::memcache::McrouterOptions, std::shared_ptr<folly::IOThreadPoolExecutorBase>)::{lambda()#1}>(folly::detail::function::Op, folly::detail::function::Data*, folly::detail::function::Data*) (o=<optimized out>, dst=<optimized out>, src=<optimized out>)
at /home/mszabo/Documents/fbcode-scratch/installed/folly/include/folly/Function.h:561
#26 folly::detail::function::DispatchSmall::exec<facebook::memcache::mcrouter::CarbonRouterInstance<facebook::memcache::MemcacheRouterInfo>::createRaw(facebook::memcache::McrouterOptions, std::shared_ptr<folly::IOThreadPoolExecutorBase>)::{lambda()#1}>(folly::detail::function::Op, folly::detail::function::Data*, folly::detail::function::Data*) (o=<optimized out>, src=<optimized out>, dst=<optimized out>)
at /home/mszabo/Documents/fbcode-scratch/installed/folly/include/folly/Function.h:554
#27 0x0000000000afa08f in folly::Function<void()>::exec (this=0x7f7b43ffe610, o=folly::detail::function::Op::NUKE, src=0x7f7b43ffe610, dst=0x0)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/Function.h:645
#28 folly::Function<void()>::~Function (this=0x7f7b43ffe610, __in_chrg=<optimized out>) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/Function.h:789
#29 folly::ThreadPoolExecutor::runTask (this=this@entry=0x26d1c400, thread=std::shared_ptr<folly::ThreadPoolExecutor::Thread> (use count 3, weak count 0) = {...}, task=...)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/ThreadPoolExecutor.cpp:143
#30 0x0000000000bd4ab7 in folly::CPUThreadPoolExecutor::threadRun (this=0x26d1c400, thread=std::shared_ptr<folly::ThreadPoolExecutor::Thread> (use count 3, weak count 0) = {...})
--Type <RET> for more, q to quit, c to continue without paging--c
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/CPUThreadPoolExecutor.cpp:364
#31 0x0000000000afeed8 in std::__invoke_impl<void, void (folly::ThreadPoolExecutor::*&)(std::shared_ptr<folly::ThreadPoolExecutor::Thread>), folly::ThreadPoolExecutor*&, std::shared_ptr<folly::ThreadPoolExecutor::Thread>&> (
__f=<optimized out>, __t=<optimized out>) at /usr/include/c++/14/bits/invoke.h:74
#32 std::__invoke<void (folly::ThreadPoolExecutor::*&)(std::shared_ptr<folly::ThreadPoolExecutor::Thread>), folly::ThreadPoolExecutor*&, std::shared_ptr<folly::ThreadPoolExecutor::Thread>&> (__fn=<optimized out>)
at /usr/include/c++/14/bits/invoke.h:96
#33 std::_Bind<void (folly::ThreadPoolExecutor::*(folly::ThreadPoolExecutor*, std::shared_ptr<folly::ThreadPoolExecutor::Thread>))(std::shared_ptr<folly::ThreadPoolExecutor::Thread>)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) (this=<optimized out>, __args=...) at /usr/include/c++/14/functional:513
#34 std::_Bind<void (folly::ThreadPoolExecutor::*(folly::ThreadPoolExecutor*, std::shared_ptr<folly::ThreadPoolExecutor::Thread>))(std::shared_ptr<folly::ThreadPoolExecutor::Thread>)>::operator()<, void>() (
this=<optimized out>) at /usr/include/c++/14/functional:598
#35 folly::detail::function::call_<std::_Bind<void (folly::ThreadPoolExecutor::*(folly::ThreadPoolExecutor*, std::shared_ptr<folly::ThreadPoolExecutor::Thread>))(std::shared_ptr<folly::ThreadPoolExecutor::Thread>)>, true, false, void>(, folly::detail::function::Data&) (p=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/Function.h:341
#36 0x00007f7b4c44b524 in std::execute_native_thread_routine (__p=0x26d220b0) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
#37 0x00007f7b4c27ccd7 in start_thread (arg=<optimized out>) at pthread_create.c:448
#38 0x00007f7b4c300c8c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
(gdb) thread 3
[Switching to thread 3 (Thread 0x7f7b49e0a6c0 (LWP 211879))]
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
38 cmpq $-4095, %rax /* Check %rax for error. */
(gdb) bt
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007f7b4c44582f in std::__atomic_futex_unsigned_base::_M_futex_wait_until (this=this@entry=0x26d23a20, __addr=__addr@entry=0x26d23a20, __val=2147483648, __has_timeout=__has_timeout@entry=false, __s=...,
__s@entry=std::chrono::duration = { 0s }, __ns=..., __ns@entry=std::chrono::duration = { 0ns }) at ../../../../../libstdc++-v3/src/c++11/futex.cc:122
#2 0x0000000000a09f74 in std::__atomic_futex_unsigned<2147483648u>::_M_load_and_test_until (this=<optimized out>, __assumed=<optimized out>, __operand=<optimized out>, __equal=<optimized out>, __mo=<optimized out>,
__has_timeout=<optimized out>, __s=..., __ns=...) at /usr/include/c++/14/bits/atomic_futex.h:109
#3 std::__atomic_futex_unsigned<2147483648u>::_M_load_and_test (this=<optimized out>, __assumed=<optimized out>, __operand=<optimized out>, __equal=<optimized out>, __mo=<optimized out>)
at /usr/include/c++/14/bits/atomic_futex.h:158
#4 std::__atomic_futex_unsigned<2147483648u>::_M_load_when_equal (this=0x26d23a20, __val=1, __mo=std::memory_order::acquire) at /usr/include/c++/14/bits/atomic_futex.h:212
#5 std::__future_base::_State_baseV2::wait (this=0x26d23a10) at /usr/include/c++/14/future:360
#6 std::__basic_future<void>::_M_get_result (this=<optimized out>) at /usr/include/c++/14/future:748
#7 0x0000000000a157f7 in std::shared_future<void>::get (this=<optimized out>) at /usr/include/c++/14/future:1048
#8 facebook::memcache::McServerThreadSpawnController::waitToStart (this=<optimized out>) at /home/mszabo/Documents/mcrouter/mcrouter/lib/network/AsyncMcServer.cpp:96
#9 facebook::memcache::McServerThread::startRemote()::{lambda()#2}::operator()() const (__closure=0x7f7b49e093b8) at /home/mszabo/Documents/mcrouter/mcrouter/lib/network/AsyncMcServer.cpp:249
#10 0x0000000000b5ad47 in folly::detail::function::FunctionTraits<void()>::operator() (this=0x7f7b49e093b0) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/Function.h:368
#11 folly::EventBase::FuncRunner::operator() (this=0x7f7b44001a40, func=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBase.cpp:200
#12 folly::detail::invokeConsumerWithTask<folly::Function<void()>, folly::EventBase::FuncRunner&, void> (consumer=..., task=..., rctx=...)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/AtomicNotificationQueue-inl.h:254
#13 folly::AtomicNotificationQueue<folly::Function<void()> >::drive<folly::EventBase::FuncRunner&> (this=this@entry=0x7f7b44001980, consumer=...)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/AtomicNotificationQueue-inl.h:337
#14 0x0000000000b5c504 in folly::EventBaseAtomicNotificationQueue<folly::Function<void()>, folly::EventBase::FuncRunner>::drive<folly::EventBase::FuncRunner&> (this=0x7f7b44001880, consumer=...)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBaseAtomicNotificationQueue-inl.h:269
#15 folly::EventBaseAtomicNotificationQueue<folly::Function<void()>, folly::EventBase::FuncRunner>::execute (this=0x7f7b44001880)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBaseAtomicNotificationQueue-inl.h:288
#16 0x0000000000b5c59d in non-virtual thunk to folly::EventBaseAtomicNotificationQueue<folly::Function<void ()>, folly::EventBase::FuncRunner>::handlerReady(unsigned short) ()
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBaseAtomicNotificationQueue-inl.h:278
#17 0x0000000000b61404 in folly::EventHandler::libeventCallback (fd=<optimized out>, events=2, arg=0x7f7b440018a8) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventHandler.cpp:159
#18 0x00007f7b4cec87fa in event_persist_closure (base=<optimized out>, ev=<optimized out>) at /usr/src/debug/libevent-2.1.12-14.fc41.x86_64/event.c:1623
#19 event_process_active_single_queue (base=base@entry=0x7f7b440013e0, activeq=<optimized out>, max_to_process=max_to_process@entry=2147483647, endtime=endtime@entry=0x0)
at /usr/src/debug/libevent-2.1.12-14.fc41.x86_64/event.c:1682
#20 0x00007f7b4ceca42f in event_process_active (base=0x7f7b440013e0) at /usr/src/debug/libevent-2.1.12-14.fc41.x86_64/event.c:1783
#21 event_base_loop (base=0x7f7b440013e0, flags=1) at /usr/src/debug/libevent-2.1.12-14.fc41.x86_64/event.c:2006
#22 0x0000000000b55672 in (anonymous namespace)::EventBaseBackend::eb_event_base_loop (this=<optimized out>, flags=1) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBase.cpp:99
#23 folly::EventBase::loopMain (this=this@entry=0x7f7b440010d0, flags=flags@entry=0, options=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBase.cpp:603
#24 0x0000000000b55a8e in folly::EventBase::loopBody (this=this@entry=0x7f7b440010d0, flags=flags@entry=0, options=options@entry=...)
at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBase.cpp:513
#25 0x0000000000b55b28 in folly::EventBase::loop (this=this@entry=0x7f7b440010d0) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBase.cpp:474
#26 0x0000000000b58677 in folly::EventBase::loopForever (this=0x7f7b440010d0) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/io/async/EventBase.cpp:781
#27 0x0000000000af4b6c in folly::IOThreadPoolExecutor::threadRun (this=0x26d187c0, thread=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/executors/IOThreadPoolExecutor.cpp:240
#28 0x0000000000afeed8 in std::__invoke_impl<void, void (folly::ThreadPoolExecutor::*&)(std::shared_ptr<folly::ThreadPoolExecutor::Thread>), folly::ThreadPoolExecutor*&, std::shared_ptr<folly::ThreadPoolExecutor::Thread>&> (
__f=<optimized out>, __t=<optimized out>) at /usr/include/c++/14/bits/invoke.h:74
#29 std::__invoke<void (folly::ThreadPoolExecutor::*&)(std::shared_ptr<folly::ThreadPoolExecutor::Thread>), folly::ThreadPoolExecutor*&, std::shared_ptr<folly::ThreadPoolExecutor::Thread>&> (__fn=<optimized out>)
at /usr/include/c++/14/bits/invoke.h:96
#30 std::_Bind<void (folly::ThreadPoolExecutor::*(folly::ThreadPoolExecutor*, std::shared_ptr<folly::ThreadPoolExecutor::Thread>))(std::shared_ptr<folly::ThreadPoolExecutor::Thread>)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) (this=<optimized out>, __args=...) at /usr/include/c++/14/functional:513
#31 std::_Bind<void (folly::ThreadPoolExecutor::*(folly::ThreadPoolExecutor*, std::shared_ptr<folly::ThreadPoolExecutor::Thread>))(std::shared_ptr<folly::ThreadPoolExecutor::Thread>)>::operator()<, void>() (
this=<optimized out>) at /usr/include/c++/14/functional:598
#32 folly::detail::function::call_<std::_Bind<void (folly::ThreadPoolExecutor::*(folly::ThreadPoolExecutor*, std::shared_ptr<folly::ThreadPoolExecutor::Thread>))(std::shared_ptr<folly::ThreadPoolExecutor::Thread>)>, true, false, void>(, folly::detail::function::Data&) (p=...) at /home/mszabo/Documents/fbcode-scratch/repos/github.com-facebook-folly.git/folly/Function.h:341
#33 0x00007f7b4c44b524 in std::execute_native_thread_routine (__p=0x26d2cf10) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
#34 0x00007f7b4c27ccd7 in start_thread (arg=<optimized out>) at pthread_create.c:448
#35 0x00007f7b4c300c8c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment