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-staging] DATAS BGC thread synchronization fix #110174

Merged
merged 1 commit into from
Nov 27, 2024

Conversation

Maoni0
Copy link
Member

@Maoni0 Maoni0 commented Nov 26, 2024

Backport of #109804 to release/9.0-staging

/cc @mangod9 @mrsharm

Customer Impact

  • Customer reported
  • Found internally

Original issue: #109804. Customers discovered a hang because one of the BGC threads had disappeared which shouldn't have happened - this is due to a BGC thread that was not needed during a previous BGC (because DATAS only needed a subset of BGC threads for that BGC to run) ran at a time when settings.concurrent was FALSE so it exited.

Regression

  • Yes
  • No

Testing

I have added stress code in GC (under STRESS_DYNAMIC_HEAP_COUNT) to make the repro quite easy.

Risk

Low. This has gone through extensive testing on both Windows and Linux.

Copy link
Contributor

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

Copy link
Member

@mrsharm mrsharm left a comment

Choose a reason for hiding this comment

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

LGTM - looks like the conflict in gcconfig.h has to be resolved, though.

@Maoni0
Copy link
Member Author

Maoni0 commented Nov 26, 2024

LGTM - looks like the conflict in gcconfig.h has to be resolved, though.

oh wow, I see your config went in right after I synced my branch...

Copy link
Member

@jeffschwMSFT jeffschwMSFT left a comment

Choose a reason for hiding this comment

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

lgtm

@Maoni0 Maoni0 merged commit 6124867 into dotnet:release/9.0-staging Nov 27, 2024
91 of 92 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-GC-coreclr Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants