Skip to content

Ensure GCHeap related debugging still works even when we use newer CLRGC to target older runtimes - #88457

Merged
cshung merged 4 commits into
dotnet:mainfrom
cshung:public/fix-debug
Jul 13, 2023
Merged

Ensure GCHeap related debugging still works even when we use newer CLRGC to target older runtimes#88457
cshung merged 4 commits into
dotnet:mainfrom
cshung:public/fix-debug

Conversation

@cshung

Copy link
Copy Markdown
Contributor

This change makes sure GCHeap-related debugging still works even when we use newer CLRGC to target older runtimes by:

  • Placing all the newer fields at the end of GcDacVars and dac_gcheap, and
  • Making sure GC never populate fields that do not exist on older versions.

@ghost

ghost commented Jul 6, 2023

Copy link
Copy Markdown

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

Issue Details

This change makes sure GCHeap-related debugging still works even when we use newer CLRGC to target older runtimes by:

  • Placing all the newer fields at the end of GcDacVars and dac_gcheap, and
  • Making sure GC never populate fields that do not exist on older versions.
Author:cshung
Assignees:cshung
Labels:

area-Diagnostics-coreclr

Milestone:-

@cshung
cshung marked this pull request as draft July 6, 2023 03:14
@cshung
cshungforce-pushed the public/fix-debug branch from 0ea15fe to 53ee1d7CompareJuly 6, 2023 17:11
@cshung
cshung marked this pull request as ready for review July 10, 2023 19:14
@cshung
cshung requested review from noahfalk and removed request for leculverJuly 10, 2023 19:15

@noahfalknoahfalk left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few suggestions inline but LGTM.

fyi @dotnet/dotnet-diag

Comment threadsrc/coreclr/gc/dac_gcheap_fields.h Outdated
Comment threadsrc/coreclr/gc/gcinterface.dacvars.def Outdated
Comment threadsrc/coreclr/gc/dac_gcheap_fields.h Outdated
Comment threadsrc/coreclr/gc/gcinterface.dacvars.def
Co-authored-by: Noah Falk <noahfalk@users.noreply.github.com>
@mikem8361

Copy link
Copy Markdown
Contributor

Is this going to be merged? It would be nice if .NET 8 doesn't have this problem going forward.

@Maoni0Maoni0 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@cshung
cshung merged commit 4ee9eef into dotnet:mainJul 13, 2023
@cshung
cshung deleted the public/fix-debug branch July 13, 2023 23:03
@ghostghost locked as resolved and limited conversation to collaborators Aug 13, 2023
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@cshung@mikem8361@noahfalk@Maoni0