Uh oh!
There was an error while loading. Please reload this page.
Improve logging of GC ref map mismatches - #80219
Conversation
(apologies for updating the bug description, I originally copied an earlier version of the CoreCLR runtime dump where I had reversed the tags for Crossgen2 vs. Runtime) |
janvorli
commented
Jan 5, 2023
The Unix builds are failing because of the |
trylek
commented
Jan 5, 2023
@janvorli - thanks for the heads-up, so does that mean that I should be using |
janvorli
commented
Jan 5, 2023
Yes |
janvorli
commented
Jan 5, 2023
And also not to use |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
AntonLapounov
commented
Jan 17, 2023
Great improvement. I have a question regarding dumping: we skip Nit: this may need a trailing space. printf("POP(0x%x)", stackPop); |
trylek
commented
Jan 17, 2023
Thanks Anton for your feedback. I think that |
As part of investigation of the GC refmap mismatch I'm fixing with
#80218
I have improved CoreCLR runtime behavior in the presence of GC refmap mismatches by adding debug-only logic to dump both the GC ref map emitted by Crossgen2 and the one calculated by the native runtime. The dump format matches the way R2RDump outputs GC ref maps next to method import cells in the R2R file.
Thanks
Tomas
/cc @dotnet/crossgen-contrib
C:\git\runtime>C:\triage\wpf\bin\Debug\net7.0-windows\win-arm64\publish\wpf.exe
GC ref map mismatch detected for method: System.Windows.Media.PathGeometry::GetPathBoundsAsRB
Runtime GC ref map: I(70) R(78) I(80)
Crossgen2 GC ref map: I(68 70) R(78) I(80)
Assert failure(PID 12596 [0x00003134], Thread: 9568 [0x2560]): false
CORECLR! CheckGCRefMapEqual + 0x1DC (0x00007fff
e66fa72c) CORECLR! ExternalMethodFixupWorker + 0xA98 (0x00007fffe681b3c8)CORECLR! DelayLoad_MethodCall + 0x58 (0x00007fff
e6581a18) PRESENTATIONCORE! <no symbol> + 0x0 (0x00007fffe401ecac)PRESENTATIONCORE! + 0x0 (0x00007fff
e401eaa4) PRESENTATIONFRAMEWORK! <no symbol> + 0x0 (0x00007fffdbd34db4)PRESENTATIONFRAMEWORK! + 0x0 (0x00007fff
dbd33d6c) PRESENTATIONFRAMEWORK! <no symbol> + 0x0 (0x00007fffdbc9a85c)PRESENTATIONCORE! + 0x0 (0x00007fff
e3ecde14) PRESENTATIONFRAMEWORK! <no symbol> + 0x0 (0x00007fffdc13ce5c)File: C:\git\runtime\src\coreclr\vm\frames.cpp Line: 2177
Image: C:\triage\wpf\bin\Debug\net7.0-windows\win-arm64\publish\wpf.exe