Repository navigation
[ci-scan] Known Build Error: stackoverflowtester assert m_crawl.GetCodeInfo()->IsValid() in runtime-interpreter #127899
Description
Build Information
Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1410560
Build error leg or test failing: windows x64 Checked-baseservices/exceptions/stackoverflow/stackoverflowtester/stackoverflowtester.cmd
Error Message
{
"ErrorMessage": "Thread: 4060 [0x0fdc]): m_crawl.GetCodeInfo()->IsValid()",
"ErrorPattern": "",
"BuildRetry": false,
"ExcludeConsoleLog": false
}stackoverflowtester fails in runtime-interpreter (def 316) on Windows under CoreCLR interpreter mode. After a stack overflow is raised, the runtime walks the stack to unwind/report it; the StackFrameIterator encounters an interpreter frame whose CodeInfo is invalid, triggering the m_crawl.GetCodeInfo()->IsValid() assertion. This is an interpreter-mode stack-walker incompatibility when handling stack overflows.
Affected pipelines (2 confirmed failing builds):
- runtime-interpreter (def 316): windows-x64 Checked and windows-arm64 Checked — builds 1410560, 1407440
Errors log:
Running stackoverflow test(smallframe main)
"Stack overflow."
"Assert failure(PID 6972 [0x00001b3c], Thread: 4060 [0x0fdc]): m_crawl.GetCodeInfo()->IsValid()"
"CORECLR! StackFrameIterator::NextRaw + 0x724"
"CORECLR! StackFrameIterator::Filter + 0xBB0"
"CORECLR! StackFrameIterator::Init + 0x258"
END EXECUTION - FAILED
First build it occurred: Build 1407440 (May 4, 2026) is the earliest in the scanned window. Occurrence count in window: 2.
Recommended action:
- Owner:
@dotnet/coreclr-interpreter(interpreter area) - Root cause:
StackFrameIteratorencounters an interpreter frame during stack overflow handling where the CodeInfo is null or invalid. The interpreter needs to ensure that frames it creates have valid CodeInfo, or the stack walker needs to handle null CodeInfo gracefully in the interpreter-frame case. - Investigate
src/coreclr/vm/stackwalk.cppand interpreter frame creation. - Short-term: add
[SkipOnCoreClr("Stack overflow handling crashes under interpreter", RuntimeTestModes.InterpreterActive)]to thestackoverflowtestertest once this KBE issue number is known.
Note
🤖 This issue was generated by the CI Outer-Loop Failure Scanner.
Note
🔒 Integrity filter blocked 1 item
The following item were blocked because they don't meet the GitHub integrity level.
- #110173
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 | noneGenerated by CI Outer-Loop Failure Scanner · ● 16.2M · ◷
Report
Summary
| 24-Hour Hit Count | 7-Day Hit Count | 1-Month Count |
|---|---|---|
| 0 | 0 | 0 |
Known issue validation
Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=1410560
Error message validated: [m_crawl.GetCodeInfo()->IsValid()]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 5/7/2026 8:27:50 AM UTC
Report
| Build | Definition | Test | Pull Request |
|---|---|---|---|
| 1410560 | dotnet/runtime | baseservices/exceptions/stackoverflow/stackoverflowtester/stackoverflowtester.cmd |
Summary
| 24-Hour Hit Count | 7-Day Hit Count | 1-Month Count |
|---|---|---|
| 0 | 1 | 1 |
Known issue validation
Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=1410560
Error message validated: [m_crawl.GetCodeInfo()->IsValid()]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 5/7/2026 8:27:50 AM UTC
Report
Summary
| 24-Hour Hit Count | 7-Day Hit Count | 1-Month Count |
|---|---|---|
| 0 | 0 | 0 |
Known issue validation
Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=1410560
Error message validated: [m_crawl.GetCodeInfo()->IsValid()]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 5/7/2026 8:27:50 AM UTC
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsNo status
Activity
dotnet-policy-service commentedon May 7, 2026
Tagging subscribers to this area: @agocke
See info in area-owners.md if you want to be subscribed.
Skip stackoverflowtester under interpreter (refs dotnet#127899)
Skip stackoverflowtester under interpreter mode (refs dotnet#127899)
Disable stackoverflowtester under interpreter mode (refs #127899)
Disable stackoverflowtester under interpreter mode
[ci-scan] Treat maintainer-closed test-disable PRs as do-not-disable …
github-actions commentedon Jun 19, 2026
Workflow artifact: ci-fix
Artifact kind: handoff
Linked KBE: #127899
Note
AI/Copilot-generated triage note.
This Known Build Error has no producible automated code change (reason: VM/interpreter assertion failure in stack-crawl internals — fixing the interpreter's StackOverflow handling is out of bounds for automated fixes), so I could not open even a best-effort PR. Looping in owners so it can be fixed forward rather than muted.
Root cause (best analysis)
The
StackOverflowTestertest crashes the CoreCLR interpreter with assertionm_crawl.GetCodeInfo()->IsValid()inStackFrameIterator::ProcessCurrentFrame. The failure occurs during stack overflow handling in interpreter mode.The interpreter's stack-frame iterator encounters a frame where
GetCodeInfo()returns an invalid result during StackOverflow recovery. This appears to be a gap in how the interpreter handles stack overflow conditions — when StackOverflow is thrown, the stack-crawl code assumes all frames have valid CodeInfo, but the interpreter may produce frames that don't satisfy this invariant.This issue is assigned to milestone "Future" and has been open since 2026-05-23 with persistent occurrences.
Evidence
Suggested reviewers / area contacts
area-VM-coreclr):@agocke,@vsadovThe fix likely involves the interpreter's stack-frame representation ensuring CodeInfo validity during StackOverflow recovery, or adjusting the StackFrameIterator to handle interpreter frames that lack valid CodeInfo.
Filed by
ci-failure-fix, which attempts validated fixes for[ci-scan]Known Build Errors and otherwise loops in owners. Comment here or on the workflow file to suggest changes;ci-failure-scan-feedbackreads in-scope feedback daily and opens (or updates) a PR with prompt edits.Note
🔒 Integrity filter blocked 2 items
The following items were blocked because they don't meet the GitHub integrity level.
search_pull_requests: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".issue_read: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".To allow these resources, lower
min-integrityin your GitHub frontmatter:[ci-scan] Treat maintainer-closed test-disable PRs as do-not-disable …
github-actions commentedon Jul 28, 2026
Workflow artifact: ci-fix
Artifact kind: handoff
Linked KBE: #127899
Note
AI/Copilot-generated triage note.
This Known Build Error has no producible automated code change (reason: JIT/GC codegen — must not be auto-fixed), so I could not open even a best-effort PR. Looping in owners so it can be fixed forward rather than muted. Two earlier automated attempts to disable the test (PRs #128737, #128793) were closed without merge, confirming a real product fix is wanted here rather than a mute.
Root cause (best analysis)
stackoverflowtesterfails under CoreCLR interpreter mode (runtime-interpreter, def 316) on windows-x64/arm64 Checked. After a stack overflow is raised, the runtime walks the stack to report/unwind it and theStackFrameIteratorhits an interpreter frame whoseCodeInfois invalid, trippingm_crawl.GetCodeInfo()->IsValid():Likely fix area: interpreter frame creation must populate a valid
CodeInfo, orStackFrameIterator(src/coreclr/vm/stackwalk.cpp) must handle the interpreter-frame case whereCodeInfois null/invalid during stack-overflow unwind. This is interpreter-mode stack-walker codegen territory, outside the safe automated-fix bounds.Evidence
Suggested reviewers / area contacts
area-VM-coreclr/ interpreter):@agocke,@vsadov,@dotnet/coreclr-interpreterA fix likely involves ensuring interpreter frames expose valid
CodeInfoto the stack walker, or makingStackFrameIteratortolerate interpreter frames during stack-overflow reporting.Warning
Firewall blocked 1 domain
The following domain was blocked by the firewall during workflow execution:
awmgmcpgSee Network Configuration for more information.
github-actions commentedon Aug 9, 2026
Workflow artifact: ci-fix
Artifact kind: handoff
Linked KBE: #127899
Note
AI/Copilot-generated triage note.
This Known Build Error has no producible automated code change (reason: interpreter/VM stack-walker codegen — must not be auto-fixed), so I could not open even a best-effort PR. Looping in owners so it can be fixed forward rather than muted.
Root cause (best analysis)
stackoverflowtesterfails under CoreCLR interpreter mode (runtime-interpreter, def 316) on Windows x64/arm64 Checked. After a stack overflow is raised, the runtime walks the stack to unwind/report it and hits the assert:The
StackFrameIteratorencounters an interpreter frame during stack-overflow handling whoseCodeInfois null/invalid. This is an interpreter-mode stack-walker incompatibility: either interpreter frames must carry validCodeInfo, orStackFrameIterator(src/coreclr/vm/stackwalk.cpp) must handle the interpreter-frame case gracefully during SO unwind. Both are VM/interpreter codegen concerns that are out of bounds for an automated fix, and no non-disabling test change would address the underlying assert.Evidence
Suggested reviewers / area contacts
area-VM-coreclr):@agocke,@vsadovarea-Codegen-Interpreter-coreclr):@BrzVlad,@janvorliA fix likely involves ensuring interpreter frames expose valid
CodeInfotoStackFrameIterator, or teaching the stack walker to tolerate interpreter frames during stack-overflow unwind.Warning
Firewall blocked 1 domain
The following domain was blocked by the firewall during workflow execution:
awmgmcpgSee Network Configuration for more information.
kotlarmilos commentedon Oct 2, 2026
Closing, no hits since May. Please reopen if it shows up again.
Note
This comment was drafted with GitHub Copilot.