HomePhabricator

refactor: Make CAddrMan::cs non-recursive

Description

refactor: Make CAddrMan::cs non-recursive

Summary:

This PR replaces RecursiveMutex CAddrMan::cs with Mutex CAddrMan::cs.

All of the related code branches are covered by appropriate lock assertions to insure that the mutex locking policy has not been changed by accident.

Backport of core#19238.

Depends no D12252 and D12254.

Test Plan:
With Debug and Clang:

ninja all check-all

Run the TSAN build.

Reviewers: #bitcoin_abc, sdulfari

Reviewed By: #bitcoin_abc, sdulfari

Subscribers: sdulfari

Differential Revision: https://reviews.bitcoinabc.org/D12257

Details

Provenance
Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>Authored on May 23 2021, 13:27
FabienCommitted on Oct 14 2022, 18:59
FabienPushed on Oct 14 2022, 18:59
Reviewer
Restricted Project
Differential Revision
D12257: refactor: Make CAddrMan::cs non-recursive
Parents
rABCf74cc137efb7: move-only: Group and re-order CAddrMan members by access type
Branches
Unknown
Tags
Unknown

Event Timeline