From 18787a8b7822429e9f69343bc0843c460ca0a688 Mon Sep 17 00:00:00 2001 From: Andrew Duffy Date: Wed, 17 Jun 2026 16:40:19 -0400 Subject: [PATCH] fix(ci): set ASAN_OPTIONS=protect_shadow_gap=0 for GPU compress fuzz cargo-fuzz builds the compress_gpu target with AddressSanitizer, which mprotects the shadow gap PROT_NONE. That collides with the large virtual-address range the CUDA driver reserves, so CudaSession::try_default() fails and the target aborts on the very first input ("Failed to initialize CUDA device 0" at vortex-cuda/src/session.rs). Setting protect_shadow_gap=0 stops ASan protecting the gap and frees the VA range for CUDA, letting device init succeed. Signed-off-by: Andrew Duffy Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/fuzz.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/fuzz.yml b/.github/workflows/fuzz.yml index 8d6186a9e8f..f421045100e 100644 --- a/.github/workflows/fuzz.yml +++ b/.github/workflows/fuzz.yml @@ -200,6 +200,10 @@ jobs: fuzz_target: compress_gpu runner: gpu extra_features: "cuda" + # ASan mprotects the shadow gap PROT_NONE by default, which collides with the large + # virtual-address range the CUDA driver reserves and makes device init fail with an + # OOM-style error. protect_shadow_gap=0 frees that VA range for CUDA. + extra_env: "ASAN_OPTIONS=protect_shadow_gap=0" jobs: 1 secrets: R2_FUZZ_ACCESS_KEY_ID: ${{ secrets.R2_FUZZ_ACCESS_KEY_ID }}