-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Revert "Add an internal mode to Lock
to have it use non-alertable w…
#98867
Conversation
…aits (dotnet#97227)" This reverts commit e568f75.
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue Details…aits (#97227)" This reverts commit e568f75. This change caused a significant perf regression in ASP.NET GRPC and WebAPI scenarios as detailed in #98021 @kouvel Feel free to bring this change back after the cause of the regression has been fixed.
|
…waits (dotnet#97227)" (dotnet#98867) This reverts commit f129701.
…waits (dotnet#97227)" (dotnet#98867) This reverts commit f129701.
…waits (dotnet#97227)" (dotnet#98867) This reverts commit f129701.
) * Reapply "Add an internal mode to `Lock` to have it use non-alertable waits (#97227)" (#98867) This reverts commit f129701. * Fix Lock's waiter duration computation PR #97227 introduced a tick count masking issue where the stored waiter start time excludes the upper bit from the ushort tick count, but comparisons with it were not doing the appropriate masking. This was leading to a lock convoy on some heavily contended locks once in a while due to waiters incorrectly appearing to have waited for a long time. Fixes #98021 * Fix wraparound issue * Fix recording waiter start time * Use a bit in the _state field instead
…aits (#97227)"
This reverts commit e568f75.
This change caused a significant perf regression in ASP.NET GRPC and WebAPI scenarios as detailed in #98021
@kouvel Feel free to bring this change back after the cause of the regression has been fixed.