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/8.0] [mono][metadata] Replace use of mem manager lock with loader lock #91327

Merged
merged 2 commits into from
Aug 30, 2023

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Aug 30, 2023

Backport of #91190 to release/8.0

/cc @BrzVlad

Customer Impact

The mono runtime may deadlock when certain custom attribute types are loaded for the first time by the execution engine.

Testing

Existing automated tests

Risk

Low. We switched to a higher-level lock. There may be some startup perf regression in highly parallel scenarios.

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.

  • If the change touches code that ships in a NuGet package, you have added the necessary package authoring and gotten it explicitly reviewed.

Hash table operations under the mem manager lock could end up taking the loader lock when performing type comparison, in the case where custom modifiers needed to be loaded. Use the loader lock instead to prevent deadlocks.
@lambdageek lambdageek added the Servicing-consider Issue for next servicing release review label Aug 30, 2023
@lambdageek lambdageek added this to the 8.0.0 milestone Aug 30, 2023
@lewing lewing added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Aug 30, 2023
@carlossanlop carlossanlop merged commit 40d2134 into release/8.0 Aug 30, 2023
106 of 109 checks passed
@carlossanlop carlossanlop deleted the backport/pr-91190-to-release/8.0 branch August 30, 2023 17:13
@radical radical mentioned this pull request Sep 26, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Sep 29, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-VM-meta-mono Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants