Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[6.0, 7.0] Assert failed in coreclr linux arm: GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj) #84393

Open
carlossanlop opened this issue Apr 6, 2023 · 6 comments
Labels
arch-arm32 area-GC-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' Known Build Error Use this to report build issues in the .NET Helix tab os-linux Linux OS (any supported distro) runtime-coreclr specific to the CoreCLR runtime
Milestone

Comments

@carlossanlop
Copy link
Member

carlossanlop commented Apr 6, 2023

Error Blob

{
  "ErrorMessage": "GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj)",
  "BuildRetry": false,
  "ErrorPattern": "",
  "ExcludeConsoleLog": false
}

Reproduction Steps

===========================================================================================================
/root/helix/work/workitem/e /root/helix/work/workitem/e
  Discovering: System.Text.Json.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  System.Text.Json.Tests (found 2792 of 2854 test cases)
  Starting:    System.Text.Json.Tests (parallel test collections = on, max threads = 2)

Assert failure(PID 25 [0x00000019], Thread: 35 [0x0023]): GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj)
    File: /__w/1/s/src/coreclr/vm/syncblk.cpp Line: 2059
    Image: /root/helix/work/correlation/dotnet

./RunTests.sh: line 162:    25 Aborted                 (core dumped) "$RUNTIME_PATH/dotnet" exec --runtimeconfig System.Text.Json.Tests.runtimeconfig.json --depsfile System.Text.Json.Tests.deps.json xunit.console.dll System.Text.Json.Tests.dll -xml testResults.xml -nologo -nocolor -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing $RSP_FILE
/root/helix/work/workitem/e
----- end Wed Apr 5 18:34:11 UTC 2023 ----- exit code 134 ----------------------------------------------------------

Report

Build Definition Test Pull Request
713022 dotnet/runtime System.Text.Json.Tests.WorkItemExecution
2472316 dotnet-runtime System.Text.Json.Tests.WorkItemExecution #40292

Summary

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

Known issue validation

Build: 🔎
Result validation: ⚠️ Validation could not be done without an Azure DevOps build URL on the issue. Please add it to the "Build: 🔎" line.
Validation performed at: 8/1/2023 10:02:52 PM UTC

@carlossanlop carlossanlop added arch-arm32 os-linux Linux OS (any supported distro) area-GC-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' runtime-coreclr specific to the CoreCLR runtime Known Build Error Use this to report build issues in the .NET Helix tab labels Apr 6, 2023
@carlossanlop carlossanlop added this to the 6.0.x milestone Apr 6, 2023
@ghost
Copy link

ghost commented Apr 6, 2023

Tagging subscribers to this area: @dotnet/gc
See info in area-owners.md if you want to be subscribed.

Issue Details

Error Blob

{
  "ErrorMessage": "GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj)",
  "BuildRetry": false,
  "ErrorPattern": "",
  "ExcludeConsoleLog": false
}

Reproduction Steps

===========================================================================================================
/root/helix/work/workitem/e /root/helix/work/workitem/e
  Discovering: System.Text.Json.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  System.Text.Json.Tests (found 2792 of 2854 test cases)
  Starting:    System.Text.Json.Tests (parallel test collections = on, max threads = 2)

Assert failure(PID 25 [0x00000019], Thread: 35 [0x0023]): GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj)
    File: /__w/1/s/src/coreclr/vm/syncblk.cpp Line: 2059
    Image: /root/helix/work/correlation/dotnet

./RunTests.sh: line 162:    25 Aborted                 (core dumped) "$RUNTIME_PATH/dotnet" exec --runtimeconfig System.Text.Json.Tests.runtimeconfig.json --depsfile System.Text.Json.Tests.deps.json xunit.console.dll System.Text.Json.Tests.dll -xml testResults.xml -nologo -nocolor -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing $RSP_FILE
/root/helix/work/workitem/e
----- end Wed Apr 5 18:34:11 UTC 2023 ----- exit code 134 ----------------------------------------------------------
Author: carlossanlop
Assignees: -
Labels:

arch-arm32, os-linux, area-GC-coreclr, blocking-clean-ci, runtime-coreclr, Known Build Error

Milestone: 6.0.x

@carlossanlop carlossanlop added Known Build Error Use this to report build issues in the .NET Helix tab and removed Known Build Error Use this to report build issues in the .NET Helix tab labels Apr 6, 2023
@trylek
Copy link
Member

trylek commented Apr 10, 2023

According to offline confirmation from @carlossanlop, this is not a new bug, the staging branch has just been populated with the content of the .NET 6 release branch. It would be great if someone on the @dotnet/gc team could share their thoughts regarding severity of this bug and / or its impact on .NET 7 / 8 in the sense of whether it's something that has since been fixed but not backported or whether it's a previously unseen rare failure we just hit for the first time.

@Maoni0
Copy link
Member

Maoni0 commented Apr 10, 2023

could be #82414 which I made a fix for in 8.0 (it has existed since forever). it does not affect running normally, only affects object validation which is only for debug builds.

@Maoni0
Copy link
Member

Maoni0 commented May 15, 2023

do we want to do something about this? would blocking ci be a reason to backport?

@mangod9
Copy link
Member

mangod9 commented May 15, 2023

probably make sense to port if its now failing more consistently. But looks like it has only a couple of hits so far. @carlossanlop is this causing any issues with 6.0 servicing release?

@carlossanlop carlossanlop changed the title [6.0] Assert failed in coreclr linux arm: GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj) [6.0, 7.0] Assert failed in coreclr linux arm: GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj) Aug 1, 2023
@carlossanlop
Copy link
Member Author

Just hit it in a 7.0 PR, so I changed the title:

Assert failure(PID 23 [0x00000017], Thread: 44 [0x002c]): GCHeapUtilities::GetGCHeap()->IsInFrozenSegment(obj)

@build-analysis build-analysis bot removed this from the 6.0.x milestone Nov 15, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Nov 15, 2023
@akoeplinger akoeplinger added this to the 6.0.x milestone Nov 24, 2023
@ghost ghost removed the untriaged New issue has not been triaged by the area owner label Nov 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-arm32 area-GC-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' Known Build Error Use this to report build issues in the .NET Helix tab os-linux Linux OS (any supported distro) runtime-coreclr specific to the CoreCLR runtime
Projects
None yet
Development

No branches or pull requests

5 participants