-
Notifications
You must be signed in to change notification settings - Fork 5.1k
[WIP] Synchronize the update to heap_segment_committed and heap_segment_used with allocation #41950
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
Conversation
…d with allocation
Tagging subscribers to this area: @dotnet/gc |
Here is the result of running I didn't trust the data at first and therefore I ran it 30 times to eliminate random fluctuations.
|
|
Please ignore the current fix. @Maoni0 and I were thinking about an alternative fix that does not involve additional synchronization. |
// Auto-generated message 69e114c which was merged 12/7 removed the intermediate src/coreclr/src/ folder. This PR needs to be updated as it touches files in that directory which causes conflicts. To update your commits you can use this bash script: https://gist.github.com/ViktorHofer/6d24f62abdcddb518b4966ead5ef3783. Feel free to use the comment section of the gist to improve the script for others. |
@cshung we discussed this yesterday, please consider closing since its not been updated for a few months and possibly create an issue if this still needs fixing. |
@cshung is this PR still relevant? If you still need to keep it, we could close and reopen when you are ready to merge. |
As of #35896,
decommit_heap_segment_pages
could be called outside of the GC pause. This function modifiesheap_segment.used
, which is also read byadjust_limit_clr
, called by allocation.Before the change, these operations are not synchronized, leading to the possibility of a race condition.