Skip to content

CI (Linux): symbolize sanitizer reports - #243

Open
matthargett wants to merge 1 commit into
BabylonJS:mainfrom
rebeckerspecialties:ci-linux-symbolizer
Open

matthargett wants to merge 1 commit into
BabylonJS:mainfrom
rebeckerspecialties:ci-linux-symbolizer

Conversation

@matthargett

@matthargett matthargett commented Sep 16, 2026

Copy link
Copy Markdown

Problem

When a Linux sanitizer job reports something, every frame is a bare address (#0 <null> <null> (UnitTests+0x2b5d208)): the sanitizer runtimes look for an unversioned llvm-symbolizer and the runner image does not have one (the clang package pulls only versioned tools). A red ASan/UBSan/TSan job therefore cannot be diagnosed from the log — on the fork, 153 TSan reports had to be re-run with a symbolizer before they could be attributed.

Changes

  • Install llvm alongside clang (it provides /usr/bin/llvm-symbolizer).
  • Point TSAN_OPTIONS, ASAN_OPTIONS and UBSAN_OPTIONS at it explicitly (external_symbolizer_path), and enable print_stacktrace=1 for UBSan.

Workflow-only change. Fork twin: rebeckerspecialties#27.

The sanitizer runtimes look for an unversioned llvm-symbolizer; the
runner image has none, so every frame of an ASan/UBSan/TSan report is
a bare address and a red job is undiagnosable. Install llvm and point
the runtimes at /usr/bin/llvm-symbolizer explicitly (UBSan also prints
a stack with print_stacktrace=1).

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The workflow changes correctly provide and configure symbolization for Linux sanitizer jobs.

Pull request overview

Configures Linux sanitizer CI to install and use llvm-symbolizer for readable reports.

Changes:

  • Installs the LLVM toolchain.
  • Configures symbolization and UBSan stack traces.
File summaries
File Description
.github/workflows/build-linux.yml Adds LLVM and sanitizer symbolizer options.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants