From 70da6fb4b85eac311c879df0d381b307ba2a6b03 Mon Sep 17 00:00:00 2001 From: Tobias Koppers Date: Wed, 29 Jan 2025 17:35:43 +0100 Subject: [PATCH] disable lifo slot to make all tasks stealable --- crates/napi/src/lib.rs | 12 ++++++++++++ turbopack/crates/turbopack-cli/src/main.rs | 1 + 2 files changed, 13 insertions(+) diff --git a/crates/napi/src/lib.rs b/crates/napi/src/lib.rs index 0c208bd5c1af1a..61a73404ae0550 100644 --- a/crates/napi/src/lib.rs +++ b/crates/napi/src/lib.rs @@ -76,6 +76,9 @@ static ALLOC: dhat::Alloc = dhat::Alloc; #[napi::module_init] fn init() { + use tokio::runtime::Builder; + use turbo_tasks_malloc::TurboMalloc; + set_hook(Box::new(|panic_info| { util::log_internal_error_and_inform(&format!( "Panic: {}\nBacktrace: {:?}", @@ -83,6 +86,15 @@ fn init() { Backtrace::new() )); })); + let rt = Builder::new_multi_thread() + .enable_all() + .on_thread_stop(|| { + TurboMalloc::thread_stop(); + }) + .disable_lifo_slot() + .build() + .unwrap(); + create_custom_tokio_runtime(rt); } #[inline] diff --git a/turbopack/crates/turbopack-cli/src/main.rs b/turbopack/crates/turbopack-cli/src/main.rs index ad98f847849030..c5cd7de16e2a70 100644 --- a/turbopack/crates/turbopack-cli/src/main.rs +++ b/turbopack/crates/turbopack-cli/src/main.rs @@ -29,6 +29,7 @@ fn main() { .on_thread_stop(|| { TurboMalloc::thread_stop(); }) + .disable_lifo_slot() .build() .unwrap() .block_on(main_inner(args))