net: remove unnecessary check of CNode::cs_vSend
Summary:
It is not possible to have a node in CConnman::vNodesDisconnected and
its reference count to be incremented - all CNode::AddRef() are done
either before the node is added to CConnman::vNodes or while holding
CConnman::cs_vNodes and the object being in CConnman::vNodes.
So, the object being in CConnman::vNodesDisconnected and its reference
count being zero means that it is not and will not start to be used by
other threads.
So, the lock of CNode::cs_vSend in CConnman::DisconnectNodes() will
always succeed and is not necessary.
Indeed all locks of CNode::cs_vSend are done either when the reference
count is >0 or under the protection of CConnman::cs_vNodes and the
node being in CConnman::vNodes.
This is a backport of core#21750
Test Plan:
With Debug and TSAN:
ninja all check check-functional
Reviewers: #bitcoin_abc, sdulfari
Reviewed By: #bitcoin_abc, sdulfari
Differential Revision: https://reviews.bitcoinabc.org/D13332