Skip to content

Remove unused memory load change notifications - #136957

Open
jkotas wants to merge 1 commit into
dotnet:mainfrom
jkotas:jkotas-remove-memory-notifications
Open

jkotas wants to merge 1 commit into
dotnet:mainfrom
jkotas:jkotas-remove-memory-notifications

Conversation

@jkotas

@jkotas jkotas commented Nov 4, 2026

Copy link
Copy Markdown
Member

Remove the uncalled GC notification registration methods, callback state, and GetMemoryLoad FCall. Preserve the GC interface for standalone-GC compatibility.

Remove the uncalled GC notification registration methods, callback state, and GetMemoryLoad FCall. Preserve the GC interface for standalone-GC compatibility.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@jkotas
jkotas requested review from matyaskollert and a balanced review from Copilot November 4, 2026 06:51
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
12 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@jkotas

jkotas commented Nov 4, 2026

Copy link
Copy Markdown
Member Author

@matyaskollert Something that I have noticed when reviewing your change. It seems to be a left-over from an abandoned experiment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

No active review issues are recorded for the removal of the unused memory-load notification infrastructure.

No open issues 🎉

What changed in this PR

Removes unused CoreCLR memory-load notification infrastructure while retaining the GC interface method for standalone-GC compatibility.

Changes:

  • Deletes notification registration, unregistration, callback logic, and associated managed state.
  • Removes the managed GetMemoryLoad internal call and its native implementation, declaration, and registration.
  • Marks the preserved IGCHeap::GetMemoryLoad method as currently unused.
File Description
src/​coreclr/​vm/​ecalllist.h Removes the GetMemoryLoad FCall registration.
src/​coreclr/​vm/​comutilnative.h Removes the native FCall declaration.
src/​coreclr/​vm/​comutilnative.cpp Removes the native FCall implementation.
src/​coreclr/​System.Private.CoreLib/​src/​System/​GC.CoreCLR.cs Removes notification methods, callback state, and the managed internal call.
src/​coreclr/​gc/​gcinterface.h Adds an unused-status comment without changing the GC interface.

Review effort: Balanced

@matyaskollert matyaskollert 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.

looks good to me

This branch has not been deployed

No deployments
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.

3 participants