Merge bitcoin/bitcoin#26306: add lock annotation for FeeFilterRounder::round()

cbb2da8fcf add lock annotation for FeeFilterRounder::round() (glozow)

Pull request description:

  CI failure from #24407: https://github.com/bitcoin/bitcoin/runs/8876014446

  Calling `WITH_LOCK()` on a non-recursive mutex requires not holding it beforehand.

ACKs for top commit:
  achow101:
    ACK cbb2da8fcf
  dergoegge:
    ACK cbb2da8fcf
  hebasto:
    ACK cbb2da8fcf, tested on Ubuntu 22.04 with clang 14.0.

Tree-SHA512: d6782ee48442b9d64d58a54c1ec7c53822ab051bf9728b44d6a0e05f1953e90f16420d349379345845db203fbad4e1f5750d9070adcb7daa18f12359a29488ca
This commit is contained in:
Andrew Chow 2022-10-13 16:02:01 -04:00
commit deeb70a165
No known key found for this signature in database
GPG Key ID: 17565732E08E5E41
2 changed files with 2 additions and 1 deletions

View File

@ -1036,6 +1036,7 @@ FeeFilterRounder::FeeFilterRounder(const CFeeRate& minIncrementalFee)
CAmount FeeFilterRounder::round(CAmount currentMinFee)
{
AssertLockNotHeld(m_insecure_rand_mutex);
std::set<double>::iterator it = m_fee_set.lower_bound(currentMinFee);
if (it == m_fee_set.end() ||
(it != m_fee_set.begin() &&

View File

@ -302,7 +302,7 @@ public:
explicit FeeFilterRounder(const CFeeRate& min_incremental_fee);
/** Quantize a minimum fee for privacy purpose before broadcast. */
CAmount round(CAmount currentMinFee);
CAmount round(CAmount currentMinFee) EXCLUSIVE_LOCKS_REQUIRED(!m_insecure_rand_mutex);
private:
const std::set<double> m_fee_set;