From a4657f996d98378c06cc7da4d2c69539c19dae32 Mon Sep 17 00:00:00 2001 From: David Crawshaw Date: Tue, 7 Apr 2020 14:52:17 +1000 Subject: device: move stats fields back down and add test diagnostics This reverts the movement of fields from d49f4e9. That commit was cherry-picked from another branch where a field had changed and misaligned the atomic fields. After cherry-picking, moving the fields was no longer necessary but got dragged along. Signed-off-by: David Crawshaw --- device/peer.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'device/peer.go') diff --git a/device/peer.go b/device/peer.go index a96f261..cb348d5 100644 --- a/device/peer.go +++ b/device/peer.go @@ -21,6 +21,14 @@ const ( ) type Peer struct { + // Mostly protects endpoint, but is generally taken whenever we modify peer + sync.RWMutex + keypairs Keypairs + handshake Handshake + device *Device + endpoint conn.Endpoint + persistentKeepaliveInterval uint16 + // These fields are accessed with atomic operations, which must be // 64-bit aligned even on 32-bit platforms. Go guarantees that an // allocated struct will be 64-bit aligned. So we place @@ -35,14 +43,6 @@ type Peer struct { // bits. Don't place other atomic fields after this one. isRunning AtomicBool - // Mostly protects endpoint, but is generally taken whenever we modify peer - sync.RWMutex - keypairs Keypairs - handshake Handshake - device *Device - endpoint conn.Endpoint - persistentKeepaliveInterval uint16 - timers struct { retransmitHandshake *Timer sendKeepalive *Timer -- cgit v1.2.3-54-g00ecf