syncs: add Mutex/RWMutex alias/wrappers for future mutex debugging

Updates #17852

Change-Id: I477340fb8e40686870e981ade11cd61597c34a20
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
Brad Fitzpatrick
2025-11-15 09:40:57 -08:00
committed by Brad Fitzpatrick
parent 3a41c0c585
commit 99b06eac49
55 changed files with 145 additions and 94 deletions
+4 -4
View File
@@ -8,8 +8,8 @@ import (
"log"
"reflect"
"slices"
"sync"
"tailscale.com/syncs"
"tailscale.com/types/logger"
"tailscale.com/util/set"
)
@@ -34,12 +34,12 @@ type Bus struct {
routeDebug hook[RoutedEvent]
logf logger.Logf
topicsMu sync.Mutex
topicsMu syncs.Mutex
topics map[reflect.Type][]*subscribeState
// Used for introspection/debugging only, not in the normal event
// publishing path.
clientsMu sync.Mutex
clientsMu syncs.Mutex
clients set.Set[*Client]
}
@@ -306,7 +306,7 @@ func (w *worker) StopAndWait() {
type stopFlag struct {
// guards the lazy construction of stopped, and the value of
// alreadyStopped.
mu sync.Mutex
mu syncs.Mutex
stopped chan struct{}
alreadyStopped bool
}