Skip to content

Test failure: Microsoft.Extensions.DependencyInjection.Tests SIGSEGV under libraries-jitstress (linux-arm64, JitStress=2) #127804

@github-actions

Description

@github-actions

Note

This issue was opened by an automated CI scanner (GitHub Copilot).

Build Information

Build: runtime-coreclr libraries-jitstress #20260505.1
Build error leg or test failing: linux-arm64 Release - Microsoft.Extensions.DependencyInjection.Tests

Error Message

{
  "ErrorMessage": "exit code 139 means SIGSEGV Illegal memory access. Deref invalid pointer, overrunning buffer, stack overflow etc. Core dumped.",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}
```

## Reasoning

The `dotnet` test host process crashes with SIGSEGV (signal 11, exit code 139) immediately after xUnit discovers all 929 test cases in `Microsoft.Extensions.DependencyInjection.Tests` and begins running, before any individual test completes. The crash occurs in JIT-compiled code during test initialization. The stack trace is entirely unresolvable (`?? at ??:0:0` from llvm-symbolizer on the arm64 host).

Stress mode: `DOTNET_JitStress=2`, `DOTNET_TieredCompilation=1`. This is a JIT stress=2 crash on arm64, distinct from the System.Text.Json arm32 crash (different architecture, different stress mode configuration). The pipeline has failed in 9 of 10 builds in the scanned window.

## Impact on platforms

| Pipeline | Platform/Arch | Helix Queue | Stress Mode | Exit Code |
|---|---|---|---|---|
| runtime-coreclr libraries-jitstress | linux-arm64 | azurelinux.3.arm64.open | JitStress=2 + TieredCompilation=1 | 139 (SIGSEGV) |

## Errors log

```
  Discovered:  Microsoft.Extensions.DependencyInjection.Tests (found 929 test cases)
  Starting:    Microsoft.Extensions.DependencyInjection.Tests (parallel test collections = on [2 threads], stop on fail = off)
[createdump] Gathering state for process 24083 dotnet
[createdump] Crashing thread 5e19 signal 11 (000b)
[createdump] Writing crash report to file /datadisks/disk1/dumps/coredump.24083.dmp.crashreport.json
[createdump] Written 372506624 bytes (90944 pages) to core file
./RunTests.sh: line 175: 24083 Segmentation fault      (core dumped) "$RUNTIME_PATH/dotnet" exec \
    --runtimeconfig Microsoft.Extensions.DependencyInjection.Tests.runtimeconfig.json \
    xunit.console.dll Microsoft.Extensions.DependencyInjection.Tests.dll -xml testResults.xml ...
----- end exit code 139 ----------------------------------------------------------
exit code 139 means SIGSEGV Illegal memory access. Deref invalid pointer, overrunning buffer, stack overflow etc. Core dumped.
Stack trace:
?? at ??:0:0
[... 40 unresolved frames ...]
Exit Code:139

First build it occurred

First confirmed in this scanned window: Build 1396926 (20260426.1). Commit at latest scan run: 349228c1adaa2a4250db5257f876d218ed6dbc51. Occurrence count in 10-build window: 9 of 10 builds failed (1 was canceled). The true origin may predate this window.

Recommended action

  • Assign to area-Extensions-DependencyInjection and area-CodeGen-coreclr / JIT arm64 owners
  • Reproduce locally: run Microsoft.Extensions.DependencyInjection.Tests on linux-arm64 with DOTNET_JitStress=2 DOTNET_TieredCompilation=1
  • The crash happens during test assembly loading/JIT compilation, before any test method runs. Use DOTNET_JitDisasm=* or a local debugger to identify the crashing method
  • Check for recent changes to the JIT arm64 backend under JitStress=2 that could produce incorrect code for DI's reflection/expression-tree-heavy startup path

Note

🔒 Integrity filter blocked 8 items

The following items were blocked because they don't meet the GitHub integrity level.

  • #112330 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #9031 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #69976 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #7208 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #119047 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #77841 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #91257 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
  • #47242 search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".

To allow these resources, lower min-integrity in your GitHub frontmatter:

tools:
  github:
    min-integrity: approved  # merged | approved | unapproved | none

Generated by CI Outer-Loop Failure Scanner · ● 8.7M ·

Report

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 0 0

Metadata

Metadata

Assignees

No one assigned

    Labels

    JitStressCLR JIT issues involving JIT internal stress modesKnown Build ErrorUse this to report build issues in the .NET Helix tabagentic-workflowsarch-arm64area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIblocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'os-linuxLinux OS (any supported distro)

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions