From 8913d9d030f4b0f59e29db8760d5c1fef7306723 Mon Sep 17 00:00:00 2001 From: pjh456 <147148383@qq.com> Date: Fri, 11 Sep 2026 11:26:36 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=8D=95=E6=B5=8B=E8=AF=95=E5=88=86?= =?UTF-8?q?=E9=85=8D=E4=B8=8A=E9=99=90=20256MiB=20=E9=A1=B6=E6=96=AD?= =?UTF-8?q?=E5=90=88=E6=B3=95=E5=A4=A7=E8=A1=A8=E6=B5=8B=E8=AF=95=E2=80=94?= =?UTF-8?q?=E2=80=94=E6=8A=AC=E8=87=B3=20512MiB=EF=BC=88=E7=9C=9F=E5=90=88?= =?UTF-8?q?=E6=B3=95=E5=B3=B0=E5=80=BC=20259.6MiB=EF=BC=8C=E7=95=99=20~252?= =?UTF-8?q?MiB=20=E4=BD=99=E9=87=8F=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crates/oxide_test262/src/main.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/crates/oxide_test262/src/main.rs b/crates/oxide_test262/src/main.rs index b20eee2b..9d6a1fe2 100644 --- a/crates/oxide_test262/src/main.rs +++ b/crates/oxide_test262/src/main.rs @@ -1470,10 +1470,10 @@ fn build_runner_kernel() -> Arc { kernel_config.max_pool_size = Some(1); // 单测试分配上限:死循环类测试触步数上限时持续分配,arena 高水位可达 GB // 级;多 worker 并发下进程 RSS 包络被各 worker 当前高水位顶起,全量运行 - // 必然 OOM。正规测试峰值实测约 256MiB(RegExp property-escapes 生成大表, - // 余量极小、27 个大表测试微越被顶,待抬 cap 或压大表内存面另行处理); + // 必然 OOM。真合法峰值实测 259.6MiB(含 RegExp property-escapes/ + // character-class 生成大表),512MiB 上限留 ~252MiB 余量; // 主要作用是把失控测试的驻留面封顶到上限本身。 - kernel_config.max_alloc_bytes = Some(256 * 1024 * 1024); + kernel_config.max_alloc_bytes = Some(512 * 1024 * 1024); KernelCore::new(kernel_config) } @@ -1945,7 +1945,7 @@ mod tests { /// 分配上限超限(与步数上限同款运行期限制):默认 skip,`--no-skip` 下 fail。 #[test] fn memory_limit_errors_skip_by_default() { - let e = "vm error: VM memory limit 268435456 exceeded (used 268436480) at pc=14"; + let e = "vm error: VM memory limit 536870912 exceeded (used 536871936) at pc=14"; assert_outcome(e, None, false, &TestOutcome::Skip("".into())); assert_outcome(e, None, true, &TestOutcome::Fail("".into())); } @@ -2048,7 +2048,7 @@ mod tests { ("compile error: Identifier 'x' is not defined", ("compile: not defined", "x")), ("vm error: IC_GET_PROP on non-object", ("vm: IC_GET_PROP on non-object", "")), ( - "vm error: VM memory limit 268435456 exceeded (used 268436480) at pc=14", + "vm error: VM memory limit 536870912 exceeded (used 536871936) at pc=14", ("vm: memory limit", ""), ), ("vm error: TypeError: method called on incompatible receiver", ("vm: other", "")),