ipn/ipnlocal: fix data race

We can't access b.netMap without holding b.mu.
We already grabbed it earlier in the function with the lock held.

Introduced in Nov 2020 in 7ea809897d.
Discovered during stress testing.
Apparently it's a pretty rare?

Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com>
(cherry picked from commit f11a8928a6)
This commit is contained in:
Josh Bleecher Snyder 2021-07-01 12:20:19 -07:00
parent 405ea978f8
commit 506476059a
1 changed files with 1 additions and 1 deletions

View File

@ -2213,7 +2213,7 @@ func (b *LocalBackend) enterState(newState ipn.State) {
b.e.RequestStatus()
case ipn.Running:
var addrs []string
for _, addr := range b.netMap.Addresses {
for _, addr := range netMap.Addresses {
addrs = append(addrs, addr.IP().String())
}
systemd.Status("Connected; %s; %s", activeLogin, strings.Join(addrs, " "))