tracing icon indicating copy to clipboard operation
tracing copied to clipboard

Using tracing in Drop in threadlocals may cause some panic.

Open enomado opened this issue 9 months ago • 1 comments

Hi. my original bug is here: https://github.com/smol-rs/polling/issues/231,

Scenario:

  • We have threadlocal object with Drop calling tracing::span
  • program leaves main and all threadlocal stuff start to Drop
  • threadlocal registry or idk drops earlier than polling, that wants to call tracing::span
  • get tons of panics
panic thread 'main' panicked at 'Thread count overflowed the configured max count. Thread index = 18446744073709551615, max threads = 4096.': /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/shard.rs:295   0: ss_common::setup::panic_log::panic_hook
             at ./crates/lib/ss_common/src/setup/panic_log.rs:43:21
   1: core::ops::function::Fn::call
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:79:5
   2: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/alloc/src/boxed.rs:1984:9
   3: std::panicking::rust_panic_with_hook
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:841:13
   4: std::panicking::begin_panic_handler::{{closure}}
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:706:13
   5: std::sys::backtrace::__rust_end_short_backtrace
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/sys/backtrace.rs:168:18
   6: __rustc::rust_begin_unwind
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:697:5
   7: core::panicking::panic_fmt
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:75:14
   8: sharded_slab::shard::Array<T,C>::current
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/shard.rs:295:9
   9: sharded_slab::pool::Pool<T,C>::create
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/pool.rs:452:28
  10: sharded_slab::pool::Pool<T,C>::create_with
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-slab-0.1.7/src/pool.rs:656:25
  11: <tracing_subscriber::registry::sharded::Registry as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/registry/sharded.rs:246:18
  12: <tracing_subscriber::layer::layered::Layered<L,S> as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/layer/layered.rs:126:18
  13: <tracing_subscriber::layer::layered::Layered<L,S> as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/layer/layered.rs:126:18
  14: <tracing_subscriber::layer::layered::Layered<L,S> as tracing_core::subscriber::Subscriber>::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-subscriber-0.3.19/src/layer/layered.rs:126:18
  15: tracing_core::dispatcher::Dispatch::new_span
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.33/src/dispatcher.rs:559:9
  16: tracing::span::Span::make_with
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:569:18
  17: tracing::span::Span::new_with
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:448:9
  18: tracing::span::Span::new::{{closure}}
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:437:44
  19: tracing_core::dispatcher::get_default
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.33/src/dispatcher.rs:389:16
  20: tracing::span::Span::new
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:437:9
  21: polling::epoll::Poller::delete
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/polling-3.7.4/src/epoll.rs:145:20
  22: polling::Poller::delete
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/polling-3.7.4/src/lib.rs:689:9
  23: <calloop::sources::generic::Generic<F,E> as core::ops::drop::Drop>::drop
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/generic.rs:254:13
  24: core::ptr::drop_in_place<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  25: core::ptr::drop_in_place<calloop::sources::DispatcherInner<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  26: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::sources::DispatcherInner<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  27: core::ptr::drop_in_place<core::cell::RefCell<calloop::sources::DispatcherInner<calloop::sources::generic::Generic<std::os::fd::owned::BorrowedFd>,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  28: core::ptr::drop_in_place<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  29: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  30: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  31: core::ptr::drop_in_place<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  32: core::ptr::drop_in_place<core::option::Option<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  33: core::ptr::drop_in_place<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  34: core::ptr::drop_in_place<[calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>]>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  35: <alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3798:13
  36: core::ptr::drop_in_place<alloc::vec::Vec<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  37: core::ptr::drop_in_place<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  38: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  39: core::ptr::drop_in_place<core::cell::RefCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  40: core::ptr::drop_in_place<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  41: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  42: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  43: core::ptr::drop_in_place<alloc::rc::Rc<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  44: core::ptr::drop_in_place<calloop::loop_logic::LoopHandle<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  45: core::ptr::drop_in_place<calloop::loop_logic::EventLoop<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  46: core::ptr::drop_in_place<winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  47: core::ptr::drop_in_place<winit::platform_impl::linux::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  48: core::ptr::drop_in_place<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  49: core::ptr::drop_in_place<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  50: core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  51: core::ptr::drop_in_place<core::cell::RefCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  52: std::sys::thread_local::native::eager::destroy::{{closure}}
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:70:13
  53: std::sys::thread_local::abort_on_dtor_unwind
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/mod.rs:187:5
  54: std::sys::thread_local::native::eager::destroy
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:64:5
  55: __call_tls_dtors
  56: <unknown>
  57: exit
  58: <unknown>
  59: __libc_start_main
  60: _start

panic thread 'main' panicked at 'panic in a destructor during cleanup': library/core/src/panicking.rs:226   0: ss_common::setup::panic_log::panic_hook
             at ./crates/lib/ss_common/src/setup/panic_log.rs:43:21
   1: core::ops::function::Fn::call
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:79:5
   2: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/alloc/src/boxed.rs:1984:9
   3: std::panicking::rust_panic_with_hook
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:841:13
   4: std::panicking::begin_panic_handler::{{closure}}
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:699:13
   5: std::sys::backtrace::__rust_end_short_backtrace
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/sys/backtrace.rs:168:18
   6: __rustc::rust_begin_unwind
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/std/src/panicking.rs:697:5
   7: core::panicking::panic_nounwind_fmt::runtime
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:117:22
   8: core::panicking::panic_nounwind_fmt
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/intrinsics/mod.rs:3240:9
   9: core::panicking::panic_nounwind_nobacktrace
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:226:5
  10: core::panicking::panic_in_cleanup
             at /rustc/be73c1f4617c97bce81b2694a767353300a75072/library/core/src/panicking.rs:339:5
  11: <calloop::sources::generic::Generic<F,E> as core::ops::drop::Drop>::drop
             at /home/sc/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/generic.rs:251:5
  12: core::ptr::drop_in_place<calloop::sources::generic::Generic<calloop::sources::ping::eventfd::ArcAsFd>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  13: core::ptr::drop_in_place<calloop::sources::ping::eventfd::PingSource>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  14: core::ptr::drop_in_place<calloop::sources::DispatcherInner<calloop::sources::ping::eventfd::PingSource,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  15: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::sources::DispatcherInner<calloop::sources::ping::eventfd::PingSource,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  16: core::ptr::drop_in_place<core::cell::RefCell<calloop::sources::DispatcherInner<calloop::sources::ping::eventfd::PingSource,winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>::new::{{closure}}>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  17: core::ptr::drop_in_place<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  18: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  19: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  20: core::ptr::drop_in_place<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  21: core::ptr::drop_in_place<core::option::Option<alloc::rc::Rc<dyn calloop::sources::EventDispatcher<winit::platform_impl::linux::x11::EventLoopState>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  22: core::ptr::drop_in_place<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  23: core::ptr::drop_in_place<[calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>]>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  24: <alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3798:13
  25: core::ptr::drop_in_place<alloc::vec::Vec<calloop::list::SourceEntry<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  26: core::ptr::drop_in_place<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  27: core::ptr::drop_in_place<core::cell::UnsafeCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  28: core::ptr::drop_in_place<core::cell::RefCell<calloop::list::SourceList<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  29: core::ptr::drop_in_place<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  30: alloc::rc::Rc<T,A>::drop_slow
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:388:13
  31: <alloc::rc::Rc<T,A> as core::ops::drop::Drop>::drop
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/rc.rs:2312:17
  32: core::ptr::drop_in_place<alloc::rc::Rc<calloop::loop_logic::LoopInner<winit::platform_impl::linux::x11::EventLoopState>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  33: core::ptr::drop_in_place<calloop::loop_logic::LoopHandle<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  34: core::ptr::drop_in_place<calloop::loop_logic::EventLoop<winit::platform_impl::linux::x11::EventLoopState>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  35: core::ptr::drop_in_place<winit::platform_impl::linux::x11::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  36: core::ptr::drop_in_place<winit::platform_impl::linux::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  37: core::ptr::drop_in_place<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  38: core::ptr::drop_in_place<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  39: core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  40: core::ptr::drop_in_place<core::cell::RefCell<core::option::Option<winit::event_loop::EventLoop<eframe::native::winit_integration::UserEvent>>>>
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:523:1
  41: std::sys::thread_local::native::eager::destroy::{{closure}}
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:70:13
  42: std::sys::thread_local::abort_on_dtor_unwind
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/mod.rs:187:5
  43: std::sys::thread_local::native::eager::destroy
             at /home/sc/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/thread_local/native/eager.rs:64:5
  44: __call_tls_dtors
  45: <unknown>
  46: exit
  47: <unknown>
  48: __libc_start_main
  49: _start

thread caused non-unwinding panic. aborting.
fish: Job 1, 'cargo run' terminated by signal SIGABRT (Abort)

enomado avatar Mar 22 '25 21:03 enomado

Is this related at all to #3223 ?

vlovich avatar Jun 09 '25 17:06 vlovich