I'm not sure exactly which repo this issue belongs in. I just updated to crossbeam 0.4.0 earlier and am now experiencing segfaults with the following stack trace. Apologies for the lack of pruning:
Thread 51 "tokio-runtime-w" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe13fe700 (LWP 107445)]
arena_dalloc_bin_locked_impl (bitselm=<optimized out>, junked=true, ptr=<optimized out>, chunk=0x7fffdec00000,
arena=0x7ffff6d4eb00, tsdn=0x7fffe13fe480) at /checkout/src/liballoc_jemalloc/../jemalloc/src/arena.c:2964
2964 /checkout/src/liballoc_jemalloc/../jemalloc/src/arena.c: No such file or directory.
(gdb) bt
#0 arena_dalloc_bin_locked_impl (bitselm=<optimized out>, junked=true, ptr=<optimized out>, chunk=0x7fffdec00000,
arena=0x7ffff6d4eb00, tsdn=0x7fffe13fe480) at /checkout/src/liballoc_jemalloc/../jemalloc/src/arena.c:2964
#1 je_arena_dalloc_bin_junked_locked (tsdn=tsdn@entry=0x7fffe13fe480, arena=arena@entry=0x7ffff6d4eb00,
chunk=0x7fffdec00000, ptr=<optimized out>, bitselm=<optimized out>)
at /checkout/src/liballoc_jemalloc/../jemalloc/src/arena.c:2981
#2 0x00005555558640a5 in je_tcache_bin_flush_small (tsd=0x7fffe13fe480, tcache=tcache@entry=0x7fffebca1000,
tbin=tbin@entry=0x7fffebca1328, binind=binind@entry=24, rem=rem@entry=10)
at /checkout/src/liballoc_jemalloc/../jemalloc/src/tcache.c:137
#3 0x000055555583ca9f in je_tcache_dalloc_small (slow_path=<optimized out>, binind=<optimized out>,
ptr=<optimized out>, tcache=<optimized out>, tsd=<optimized out>)
at /checkout/src/liballoc_jemalloc/../jemalloc/include/jemalloc/internal/tcache.h:419
#4 je_arena_sdalloc (slow_path=<optimized out>, tcache=<optimized out>, size=<optimized out>, ptr=<optimized out>,
tsdn=<optimized out>) at /checkout/src/liballoc_jemalloc/../jemalloc/include/jemalloc/internal/arena.h:1499
#5 je_isdalloct (slow_path=<optimized out>, tcache=<optimized out>, size=<optimized out>, ptr=<optimized out>,
tsdn=<optimized out>) at include/jemalloc/internal/jemalloc_internal.h:1195
#6 je_isqalloc (slow_path=<optimized out>, tcache=<optimized out>, size=<optimized out>, ptr=<optimized out>,
tsd=<optimized out>) at include/jemalloc/internal/jemalloc_internal.h:1205
#7 isfree (tsd=<optimized out>, slow_path=<optimized out>, tcache=<optimized out>, usize=<optimized out>,
ptr=<optimized out>) at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:1921
#8 sdallocx (ptr=0x7fffdec59800, size=<optimized out>, flags=<optimized out>)
at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:2669
#9 0x00005555555ff077 in <alloc::alloc::Global as core::alloc::GlobalAlloc>::dealloc (self=<optimized out>,
ptr=<optimized out>, layout=...) at /checkout/src/liballoc/alloc.rs:86
#10 <alloc::alloc::Global as core::alloc::Alloc>::dealloc (self=<optimized out>, ptr=..., layout=...)
at /checkout/src/liballoc/alloc.rs:117
#11 <alloc::raw_vec::RawVec<T, A>>::dealloc_buffer (self=<optimized out>) at /checkout/src/liballoc/raw_vec.rs:704
#12 <alloc::raw_vec::RawVec<T, A> as core::ops::drop::Drop>::drop (self=0x7fffdec72198)
at /checkout/src/liballoc/raw_vec.rs:713
#13 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#14 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#15 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#16 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#17 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#18 0x0000555555634435 in core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#19 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#20 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#21 core::mem::drop (_x=0x7fffdec72000) at /checkout/src/libcore/mem.rs:787
#22 <crossbeam_epoch::atomic::Owned<T> as core::ops::drop::Drop>::drop (self=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/atomic.rs:723
#23 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#24 core::mem::drop (_x=...) at /checkout/src/libcore/mem.rs:787
#25 crossbeam_epoch::guard::Guard::defer::{{closure}} ()
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/guard.rs:176
#26 crossbeam_epoch::deferred::Deferred::new::call (raw=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/deferred.rs:44
#27 0x0000555555735be6 in crossbeam_epoch::deferred::Deferred::call (self=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/deferred.rs:75
#28 <crossbeam_epoch::internal::Bag as core::ops::drop::Drop>::drop (self=0x7fffe13fbcf8)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/internal.rs:106
#29 core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#30 0x0000555555736cf5 in core::ptr::drop_in_place () at /checkout/src/libcore/ptr.rs:59
#31 core::mem::drop (_x=...) at /checkout/src/libcore/mem.rs:787
#32 crossbeam_epoch::internal::Global::collect (self=0x7ffff6a8b040, guard=0x7fffe13fc530)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/internal.rs:190
#33 0x00005555555fec5d in crossbeam_epoch::internal::Local::pin (self=0x3)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/internal.rs:379
#34 crossbeam_epoch::collector::Handle::pin (self=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/collector.rs:72
---Type <return> to continue, or q <return> to quit---
#35 crossbeam_epoch::default::pin::{{closure}} (handle=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/default.rs:25
#36 <std::thread::local::LocalKey<T>>::try_with (self=<optimized out>, f=...)
at /checkout/src/libstd/thread/local.rs:294
#37 <std::thread::local::LocalKey<T>>::with (self=<optimized out>, f=...) at /checkout/src/libstd/thread/local.rs:248
#38 0x000055555567656d in crossbeam_epoch::default::pin ()
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.5.1/src/default.rs:25
#39 <crossbeam::seg_queue::SegQueue<T>>::try_pop (self=0x7ffff6b091a0)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/crossbeam-0.4.0/src/seg_queue.rs:116
#40 0x000055555569b367 in <hydrabadger::hydrabadger::handler::Handler as futures::future::Future>::poll (
self=0x7ffff6b09178) at src/hydrabadger/handler.rs:684
#41 0x000055555560a3fe in futures::future::option::<impl futures::future::Future for core::option::Option<F>>::poll (
self=0x7ffff6b09178)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/future/option.rs:12
#42 <futures::future::map_err::MapErr<A, F> as futures::future::Future>::poll (self=0x7ffff6b09178)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/future/map_err.rs:30
#43 0x00005555556274ac in <futures::future::join::MaybeDone<A>>::poll (self=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/future/join.rs:153
#44 <futures::future::join::Join4<A, B, C, D> as futures::future::Future>::poll (self=0x7ffff6b09000)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/future/join.rs:75
#45 0x00005555556098b9 in <futures::future::map::Map<A, F> as futures::future::Future>::poll (self=0x7ffff6b09000)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/future/map.rs:30
#46 0x0000555555718c60 in <alloc::boxed::Box<F> as futures::future::Future>::poll (self=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/future/mod.rs:113
#47 <futures::task_impl::Spawn<T>>::poll_future_notify::{{closure}} (f=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/task_impl/mod.rs:289
#48 <futures::task_impl::Spawn<T>>::enter::{{closure}} ()
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/task_impl/mod.rs:363
#49 futures::task_impl::std::set (task=0x7fffe13fd428, f=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/task_impl/std/mod.rs:78
#50 0x000055555571bc86 in <futures::task_impl::Spawn<T>>::enter (self=<optimized out>,
unpark=<error reading variable: access outside bounds of object referenced via synthetic pointer>, f=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/task_impl/mod.rs:363
#51 <futures::task_impl::Spawn<T>>::poll_future_notify (self=<optimized out>, notify=<optimized out>, id=76)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-0.1.23/src/task_impl/mod.rs:289
#52 tokio_threadpool::task::TaskFuture::poll (self=<optimized out>, unpark=<optimized out>, id=76,
exec=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/task/mod.rs:292
#53 tokio_threadpool::task::Task::run::{{closure}} ()
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/task/mod.rs:165
#54 core::ops::function::FnOnce::call_once () at /checkout/src/libcore/ops/function.rs:223
#55 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (self=..., _args=<optimized out>)
at /checkout/src/libstd/panic.rs:305
#56 std::panicking::try::do_call (data=0x7fffe13fd4d0 "H\325?\341\377\177") at /checkout/src/libstd/panicking.rs:310
#57 0x0000555555834d8a in __rust_maybe_catch_panic () at libpanic_unwind/lib.rs:105
#58 0x000055555571ade7 in std::panicking::try (f=...) at /checkout/src/libstd/panicking.rs:289
#59 std::panic::catch_unwind (f=...) at /checkout/src/libstd/panic.rs:374
#60 tokio_threadpool::task::Task::run (self=<optimized out>, unpark=<optimized out>, exec=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/task/mod.rs:151
#61 0x00005555557144a6 in tokio_threadpool::worker::Worker::run_task2 (self=<optimized out>, notify=<optimized out>,
sender=<optimized out>, task=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:545
#62 tokio_threadpool::worker::Worker::run_task (self=0x7fffe13fd938, task=..., notify=<optimized out>, sender=0x3)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:445
#63 0x00005555557137b5 in tokio_threadpool::worker::Worker::try_run_owned_task (notify=0x7fffe0a0d060,
sender=0x7ffff6a8b280, self=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:385
#64 tokio_threadpool::worker::Worker::try_run_task (self=<optimized out>, notify=<optimized out>,
---Type <return> to continue, or q <return> to quit---
sender=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:293
#65 tokio_threadpool::worker::Worker::run (self=0x7fffe13fd938)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:239
#66 0x0000555555700967 in tokio::runtime::builder::Builder::build::{{closure}}::{{closure}}::{{closure}}::{{closure}}
() at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.1.7/src/runtime/builder.rs:125
#67 tokio_timer::timer::handle::with_default::{{closure}} (current=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-timer-0.2.4/src/timer/handle.rs:64
#68 <std::thread::local::LocalKey<T>>::try_with (self=<optimized out>, f=...)
at /checkout/src/libstd/thread/local.rs:294
#69 <std::thread::local::LocalKey<T>>::with (self=<optimized out>, f=...) at /checkout/src/libstd/thread/local.rs:248
#70 0x0000555555700a93 in tokio_timer::timer::handle::with_default (handle=<optimized out>, enter=<optimized out>,
f=...) at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-timer-0.2.4/src/timer/handle.rs:56
#71 tokio::runtime::builder::Builder::build::{{closure}}::{{closure}}::{{closure}} (enter=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.1.7/src/runtime/builder.rs:124
#72 tokio_timer::clock::clock::with_default::{{closure}} (cell=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-timer-0.2.4/src/clock/clock.rs:136
#73 <std::thread::local::LocalKey<T>>::try_with (self=0x555555b886a0 <byte_str.0.llvm>, f=...)
at /checkout/src/libstd/thread/local.rs:294
#74 <std::thread::local::LocalKey<T>>::with (self=0x555555b886a0 <byte_str.0.llvm>, f=...)
at /checkout/src/libstd/thread/local.rs:248
#75 0x00005555557007cb in tokio_timer::clock::clock::with_default (clock=<optimized out>, enter=<optimized out>, f=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-timer-0.2.4/src/clock/clock.rs:119
#76 tokio::runtime::builder::Builder::build::{{closure}}::{{closure}} (enter=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.1.7/src/runtime/builder.rs:123
#77 tokio_reactor::with_default::{{closure}} (current=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-reactor-0.1.2/src/lib.rs:231
#78 <std::thread::local::LocalKey<T>>::try_with (self=<optimized out>, f=...)
at /checkout/src/libstd/thread/local.rs:294
#79 <std::thread::local::LocalKey<T>>::with (self=<optimized out>, f=...) at /checkout/src/libstd/thread/local.rs:248
#80 0x00005555556fe0a9 in tokio_reactor::with_default (handle=<optimized out>, enter=<optimized out>, f=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-reactor-0.1.2/src/lib.rs:214
#81 tokio::runtime::builder::Builder::build::{{closure}} (w=<optimized out>, enter=0x7fffe13fd8a0)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.1.7/src/runtime/builder.rs:122
#82 0x000055555571a545 in tokio_threadpool::callback::Callback::call (self=<optimized out>, worker=0x0, enter=0x4c)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/callback.rs:21
#83 tokio_threadpool::worker::Worker::do_run::{{closure}}::{{closure}} (enter=0x4c)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:121
#84 tokio_executor::global::with_default::{{closure}} (cell=0x7fffe13fe5a8)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-executor-0.1.2/src/global.rs:176
#85 <std::thread::local::LocalKey<T>>::try_with (self=<optimized out>, f=...)
at /checkout/src/libstd/thread/local.rs:294
#86 <std::thread::local::LocalKey<T>>::with (self=<optimized out>, f=...) at /checkout/src/libstd/thread/local.rs:248
#87 0x000055555571a68c in tokio_executor::global::with_default (executor=0x7ffff6a8b280, enter=0x8, f=...)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-executor-0.1.2/src/global.rs:150
#88 tokio_threadpool::worker::Worker::do_run::{{closure}} (c=<optimized out>)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:119
#89 <std::thread::local::LocalKey<T>>::try_with (self=0x555555b893c0 <byte_str.p.llvm>, f=...)
at /checkout/src/libstd/thread/local.rs:294
#90 <std::thread::local::LocalKey<T>>::with (self=0x555555b893c0 <byte_str.p.llvm>, f=...)
at /checkout/src/libstd/thread/local.rs:248
#91 0x0000555555719734 in tokio_threadpool::worker::Worker::do_run (self=0x7ffff6a8b280)
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/worker/mod.rs:110
#92 tokio_threadpool::pool::Pool::spawn_thread::{{closure}} ()
at /home/nick/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-threadpool-0.1.5/src/pool/mod.rs:417
#93 std::sys_common::backtrace::__rust_begin_short_backtrace (f=...)
at /checkout/src/libstd/sys_common/backtrace.rs:136
#94 0x000055555571bcec in std::thread::Builder::spawn::{{closure}}::{{closure}} ()
---Type <return> to continue, or q <return> to quit---
at /checkout/src/libstd/thread/mod.rs:409
#95 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (self=..., _args=<optimized out>)
at /checkout/src/libstd/panic.rs:305
#96 std::panicking::try::do_call (data=<optimized out>) at /checkout/src/libstd/panicking.rs:310
#97 0x0000555555834d8a in __rust_maybe_catch_panic () at libpanic_unwind/lib.rs:105
#98 0x000055555571740d in std::panicking::try (f=...) at /checkout/src/libstd/panicking.rs:289
#99 std::panic::catch_unwind (f=...) at /checkout/src/libstd/panic.rs:374
#100 std::thread::Builder::spawn::{{closure}} () at /checkout/src/libstd/thread/mod.rs:408
#101 <F as alloc::boxed::FnBox<A>>::call_box (self=0x7ffff3698380, args=<optimized out>)
at /checkout/src/liballoc/boxed.rs:638
#102 0x000055555582982b in _$LT$alloc..boxed..Box$LT$alloc..boxed..FnBox$LT$A$C$$u20$Output$u3d$R$GT$$u20$$u2b$$u20$$u27$a$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h9ad6846d840ae36b ()
at /checkout/src/liballoc/boxed.rs:648
#103 std::sys_common::thread::start_thread () at libstd/sys_common/thread.rs:24
#104 0x00005555558188b6 in std::sys::unix::thread::Thread::new::thread_start () at libstd/sys/unix/thread.rs:90
#105 0x00007ffff77b16db in start_thread (arg=0x7fffe13fe700) at pthread_create.c:463
#106 0x00007ffff72c288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95