mirror of
https://github.com/tailscale/tailscale.git
synced 2025-02-18 02:48:40 +00:00
wgengine/magicsock: fix rare shutdown race in test.
Signed-off-by: David Anderson <danderson@tailscale.com>
This commit is contained in:
parent
97693f2e42
commit
fe2f89deab
@ -3208,7 +3208,9 @@ func ippDebugString(ua netaddr.IPPort) string {
|
||||
}
|
||||
|
||||
// discoEndpoint is a wireguard/conn.Endpoint that picks the best
|
||||
// available path to communicate with a peer.
|
||||
// available path to communicate with a peer, based on network
|
||||
// conditions and what the peer supports. In particular, despite the
|
||||
// name, an endpoint can support DERP only.
|
||||
type discoEndpoint struct {
|
||||
// atomically accessed; declared first for alignment reasons
|
||||
lastRecv mono.Time
|
||||
|
@ -290,11 +290,19 @@ func meshStacks(logf logger.Logf, mutateNetmap func(idx int, nm *netmap.NetworkM
|
||||
m.conn.UpdatePeers(peerSet)
|
||||
wg, err := nmcfg.WGCfg(nm, logf, netmap.AllowSingleHosts, "")
|
||||
if err != nil {
|
||||
if ctx.Err() != nil {
|
||||
// shutdown race, don't care.
|
||||
return
|
||||
}
|
||||
// We're too far from the *testing.T to be graceful,
|
||||
// blow up. Shouldn't happen anyway.
|
||||
panic(fmt.Sprintf("failed to construct wgcfg from netmap: %v", err))
|
||||
}
|
||||
if err := m.Reconfig(wg); err != nil {
|
||||
if ctx.Err() != nil {
|
||||
// shutdown race, don't care.
|
||||
return
|
||||
}
|
||||
panic(fmt.Sprintf("device reconfig failed: %v", err))
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user