diff options
author | MarcoFalke <falke.marco@gmail.com> | 2018-05-14 09:17:23 -0400 |
---|---|---|
committer | MarcoFalke <falke.marco@gmail.com> | 2018-05-14 09:17:35 -0400 |
commit | 0dec5b5af4e8531bf4d50f74eafe8e5e60d2fbc3 (patch) | |
tree | 7ba24e5ffe204ccb9d6351eb234bebb28ae0e0aa /src/Makefile.am | |
parent | 7cc1bd3aaeb684e12dbb6a9cd287cac79451fcb6 (diff) | |
parent | 66b0b1b2a6caf9baa2877e414414ec3b37121b8d (diff) | |
download | bitcoin-0dec5b5af4e8531bf4d50f74eafe8e5e60d2fbc3.tar.xz |
Merge #13081: wallet: Add compile time checking for cs_wallet runtime locking assertions
66b0b1b2a6 Add compile time checking for all cs_wallet runtime locking assertions (practicalswift)
Pull request description:
Add compile time checking for `cs_wallet` runtime locking assertions.
This PR is a subset of #12665. The PR was broken up to make reviewing easier.
The intention is that literally all `EXCLUSIVE_LOCKS_REQUIRED`/`LOCKS_EXCLUDED`:s added in this PR should follow either directly or indirectly from `AssertLockHeld(…)`/`AssertLockNotHeld(…)`:s already existing in the repo.
Consider the case where function `A(…)` contains `AssertLockHeld(cs_foo)` (without
first locking `cs_foo` in `A`), and that `B(…)` calls `A(…)` (without first locking `cs_main`):
* It _directly_ follows that: `A(…)` should have an `EXCLUSIVE_LOCKS_REQUIRED(cs_foo)` annotation.
* It _indirectly_ follows that: `B(…)` should have an `EXCLUSIVE_LOCKS_REQUIRED(cs_foo)` annotation.
Tree-SHA512: d561d89e98a823922107e56dbd493f0f82e22edac91e51e6422f17daf2b446a70c143b7b157ca618fadd33d0ec63eb7a57dde5a83bfdf1fc19d71459b43e21fd
Diffstat (limited to 'src/Makefile.am')
0 files changed, 0 insertions, 0 deletions