Skip to content

!PreemptiveGCDisabled assert failure from FiberDetachCallback during System.Runtime.Tests on win-arm64 #120437

@jakobbotsch

Description

@jakobbotsch

We see this failure relatively consistently in libraries-jitstress pipeline, but it happens even in the legs without jitstress.

Example pipeline run: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1166315&view=results
Example test failure: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1166315&view=ms.vss-test-web.build-test-results-tab&runId=32268716&resultId=212753&paneView=debug
Example console log: https://helixr18s23ayyeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-00cfbd78498c453ba0/System.Runtime.Tests/1/console.19e7683a.log

set DOTNET_TieredCompilation=0
set DOTNET_JITMinOpts=1
...
C:\h\w\B1A7099C\w\A9560970\e>"C:\h\w\B1A7099C\p\dotnet.exe" exec --runtimeconfig System.Runtime.Tests.runtimeconfig.json --depsfile System.Runtime.Tests.deps.json xunit.console.dll System.Runtime.Tests.dll -xml testResults.xml -nologo -nocolor -notrait category=AdditionalTimezoneChecks -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing  
  Discovering: System.Runtime.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  System.Runtime.Tests (found 9507 of 9556 test cases)
  Starting:    System.Runtime.Tests (parallel test collections = on [2 threads], stop on fail = off)
    System.Tests.DateTimeOffsetTests.ToLocalTime_MaxValue [SKIP]
      Condition(s) not met: "IsMaxValuePositiveLocalOffset"
    System.Tests.DateTimeOffsetTests.ToLocalTime_MinValue [SKIP]
      Condition(s) not met: "IsMinValueNegativeLocalOffset"
    System.Tests.DateTimeOffsetTests.ToLocalTime_Ambiguous [SKIP]
      Condition(s) not met: "IsPacificTime"
    System.Tests.ArgIteratorTests.ArgIterator_Throws_PlatformNotSupportedException [SKIP]
      Condition(s) not met: "IsArgIteratorNotSupported"
    System.Tests.UIntPtrTests.BigMul32 [SKIP]
      Condition(s) not met: "Is32Bit"
    System.Tests.TimeZoneInfoTests.UnsupportedImplicitConversionTest [SKIP]
      Condition(s) not met: "DoesNotSupportIanaNamesConversion"

Assert failure(PID 13100 [0x0000332c], Thread: 13380 [0x3444]): !PreemptiveGCDisabled()

CORECLR! Thread::DetachThread + 0x140 (0x00007ffc`8b575b28)
CORECLR! FiberDetachCallback + 0xE0 (0x00007ffc`8b7ee800)
NTDLL! RtlPcToFileHeader + 0x628 (0x00007ffc`fa513e48)
<no module>! <no symbol> + 0x0 (0x4d63fffc`fa58d3a8)
    File: D:\a\_work\1\s\src\coreclr\vm\threads.cpp:908
    Image: C:\h\w\B1A7099C\p\dotnet.exe

----- end Mon 10/06/2025  8:20:43.93 ----- exit code -1073740286 ----------------------------------------------------------
----- start ===============  XUnitLogChecker Output =====================================================

Known Issue Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": ["!PreemptiveGCDisabled()", "Thread::DetachThread", "FiberDetachCallback"],
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=1166315
Error message validated: [!PreemptiveGCDisabled() Thread::DetachThread FiberDetachCallback]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 10/6/2025 12:08:06 PM UTC

Report

Build Definition Test Pull Request
1166315 dotnet/runtime System.Runtime.Tests.WorkItemExecution

Summary

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

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions