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

[release/9.0] [mono][sgen] Add separate card mark function to be used with debug #110262

Closed

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Nov 29, 2024

Backport of #109698 to release/9.0

/cc @BrzVlad

Customer Impact

There are existing GC related crashes in the wild, that are currently impossible to investigate. A debug option that might assist this is MONO_GC_DEBUG=check-remset-consistency, however a customer reported that this option reports false positives. This PR fixes these false positives, hopefully assisting in the investigation of GC crashes.

Regression

No.

Testing

Manual testing locally.

Risk

Low. This change has no impact unless a certain debug flag is passed, flag which is used for the sole purpose of tracking down GC crashes.

IMPORTANT: If this backport is for a servicing release, please verify that:

  • The PR target branch is release/X.0-staging, not release/X.0.

Package authoring no longer needed in .NET 9

IMPORTANT: Starting with .NET 9, you no longer need to edit a NuGet package's csproj to enable building and bump the version.
Keep in mind that we still need package authoring in .NET 8 and older versions.

When marking cards for a non-array object or a an element vt in an object, it is enough to mark a card for any address within that object/vt because they are always fully scanned. Cardtable consistency checks are not accounting for this detail and it is difficult to have it implemented. Instead, when having such debug flags enabled, we use an explicit approach where every single card is being marked.
Copy link
Contributor

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

@BrzVlad BrzVlad changed the base branch from release/9.0 to release/9.0-staging November 29, 2024 08:56
@BrzVlad BrzVlad changed the base branch from release/9.0-staging to release/9.0 November 29, 2024 08:57
@BrzVlad BrzVlad closed this Nov 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant