From 2cab37aeb36705387031a433a413d8ce8e09287f Mon Sep 17 00:00:00 2001 From: not-matthias Date: Fri, 5 Jun 2026 15:05:38 +0200 Subject: [PATCH 1/2] fix(valgrind): install libc6-dbg during valgrind setup GitHub runners do not ship libc debug symbols by default, which leads to unresolved symbols in exec CLI simulation benchmarks. Install libc6-dbg via apt on supported systems after installing valgrind. Fixes COD-2770 --- src/executor/valgrind/setup.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/executor/valgrind/setup.rs b/src/executor/valgrind/setup.rs index adcb0fc5..04904f71 100644 --- a/src/executor/valgrind/setup.rs +++ b/src/executor/valgrind/setup.rs @@ -199,7 +199,13 @@ pub async fn install_valgrind( Ok(vec!["valgrind".to_string()]) }, ) - .await + .await?; + + // Install libc debug symbols, as Github runners by default do not + // include them. Only install for supported systems. + apt::install(system_info, &["libc6-dbg"])?; + + Ok(()) } #[cfg(test)] From 1431b05c1348f59243b18441d04ac6c94e7387be Mon Sep 17 00:00:00 2001 From: not-matthias Date: Wed, 10 Jun 2026 14:19:58 +0200 Subject: [PATCH 2/2] fixup! fix(valgrind): install libc6-dbg during valgrind setup --- src/executor/valgrind/setup.rs | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/executor/valgrind/setup.rs b/src/executor/valgrind/setup.rs index 04904f71..058cf130 100644 --- a/src/executor/valgrind/setup.rs +++ b/src/executor/valgrind/setup.rs @@ -193,19 +193,17 @@ pub async fn install_valgrind( let binary = get_codspeed_valgrind_binary(system_info)?; let deb_path = env::temp_dir().join("valgrind-codspeed.deb"); download_pinned_file(binary, &deb_path).await?; - apt::install(system_info, &[deb_path.to_str().unwrap()])?; + + // Install libc debug symbols alongside valgrind, as GitHub runners + // do not include them by default. Keeping them in the same install + // call puts them under the same caching and idempotency logic. + apt::install(system_info, &[deb_path.to_str().unwrap(), "libc6-dbg"])?; // Return package names for caching - Ok(vec!["valgrind".to_string()]) + Ok(vec!["valgrind".to_string(), "libc6-dbg".to_string()]) }, ) - .await?; - - // Install libc debug symbols, as Github runners by default do not - // include them. Only install for supported systems. - apt::install(system_info, &["libc6-dbg"])?; - - Ok(()) + .await } #[cfg(test)]