forked from bitcoin/bitcoin
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
refactor: drop mutex and atomic from CMasternodeMetaInfo, access to object directly without shared_ptr #6894
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
Open
knst
wants to merge
17
commits into
dashpay:develop
Choose a base branch
from
knst:fix-drop-meta-cs
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
6cb2344
refactor: replace direct call of MetaInfo from rpc/evo code to helper
knst 16abbed
refactor: replace direct usages of GetMetaInfo while calculating dsq …
knst 7ec239b
refactor: replace direct usages of GetMetaInfo when platform unban no…
knst 7ba51ec
refactor: remove direct usages of GetMetaInfo for dkgsession
knst a40c418
refactor: hide direct calls of GetMetaInfo from llmq/utils
knst b1a03e6
refactor: hide direct usages of GetMetaInfo from net module
knst c0e146f
refactor: hide direct usages of GetMetaInfo for net_processing
knst d5e693f
refactor: drop shared_ptr from CMasternodeMetaMan and make GetMetaInf…
knst 1bfd6ff
refactor: drop mutex and atomics from CMasternodeMetaInfo
knst 69ed5f5
refactor: remove useless helpers of CMasternodeMetaInfo
knst b79dd90
refactor: use a helper GetMetaInfo and GetMetaInfoOrDefault internally
knst ed27d90
refactor: use GetMetaInfoOrDefault widely, final
knst 04ab976
refactor: remove unused CConnMan from meta.h
knst 969b841
refactor: drop return bool from AddGovernanceVote which is always true
knst fe3966d
fix: removed leftover annotation, as follow-up conflict resolving wit…
knst f860031
refactoring: apply code review suggestions
knst 982b68e
fix: usage of ResetPlatformBan in CDeterministicMNList
knst File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Guard SetLastOutboundSuccess with mn meta lock
SetLastOutboundSuccessrequires the manager mutex to be held (the old code locked viaGetMetaInfo). We’re now calling it bare, which violates the contract and will assert. Wrap the call in the manager’s lock (e.g.WITH_LOCK(mn_metaman.GetCs(), mn_metaman.SetLastOutboundSuccess(...));).🤖 Prompt for AI Agents