Page MenuHomePhabricator

Merge #11744: net: Add missing locks in net.{cpp,h}
ClosedPublic

Authored by jasonbcox on Tue, May 7, 19:43.

Details

Summary

bfb0c0a Add Clang thread safety analysis annotations (practicalswift)
63f21d2 net: Add missing locks in net.{cpp,h} (practicalswift)

Pull request description:

Add missing locks in `net.{cpp,h}`:
* writing variable `nTotalBytesRecv` requires holding mutex `cs_totalBytesRecv` exclusively
* writing variables `nTotalBytesSent`, `nMaxOutboundTotalBytesSentInCycle` and `nMaxOutboundCycleStartTime` require holding mutex `cs_totalBytesSent` exclusively
* writing variables `nMaxOutboundTimeframe` and `nMaxOutboundLimit` require holding mutex `cs_totalBytesSent` exclusively
* writing variable `vAddedNodes` requires holding mutex `cs_vAddedNodes` exclusively

Tree-SHA512: 54a5b4bc6dc6f404dacf403af2ddd7b2214cc0a17d1d32a282def1c6b536105dada56bfabbc8606f56755f2d24874abba09913b51c8d13b0f2b000149551f0b0

Backport of Core PR 11744
https://github.com/bitcoin/bitcoin/pull/11744/files

Test Plan

make check
test_runner.py

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

jasonbcox created this revision.Tue, May 7, 19:43
Herald added a reviewer: Restricted Project. · View Herald TranscriptTue, May 7, 19:43
Fabien accepted this revision.Wed, May 8, 08:04
This revision is now accepted and ready to land.Wed, May 8, 08:04
This revision was automatically updated to reflect the committed changes.