You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/ipn
Maisem Ali d06a75dcd0 ipn/ipnlocal: fix deadlock in resetControlClientLocked
resetControlClientLocked is called while b.mu was held and
would call cc.Shutdown which would wait for the observer queue
to drain.
However, there may be active callbacks from cc already waiting for
b.mu resulting in a deadlock.

This makes it so that resetControlClientLocked does not call
Shutdown, and instead just returns the value.
It also makes it so that any status received from previous cc
are ignored.

Updates tailscale/corp#12827

Signed-off-by: Maisem Ali <maisem@tailscale.com>
2 years ago
..
ipnauth all: update copyright and license headers 3 years ago
ipnlocal ipn/ipnlocal: fix deadlock in resetControlClientLocked 2 years ago
ipnserver logpolicy, various: allow overriding log function 3 years ago
ipnstate ipn/ipnstate: add PeerStatus.AltSharerUserID, stop mangling Node.User 2 years ago
localapi cmd/tailscale: combine serve and funnel for debug wip funnel stream model (#9169) 2 years ago
policy ipn: prefer allow/denylist terminology 3 years ago
store cmd/k8s-operator,ipn/store/kubestore: patch secrets instead of updating 2 years ago
backend.go all: update copyright and license headers 3 years ago
doc.go all: update copyright and license headers 3 years ago
fake_test.go all: update copyright and license headers 3 years ago
ipn_clone.go cmd/tailscale,ipn: add auto-update flags and prefs (#8861) 2 years ago
ipn_view.go cmd/tailscale,ipn: add auto-update flags and prefs (#8861) 2 years ago
prefs.go cmd/tailscale,ipn: add auto-update flags and prefs (#8861) 2 years ago
prefs_test.go cmd/tailscale,ipn: add auto-update flags and prefs (#8861) 2 years ago
serve.go cmd/tailscale: combine serve and funnel for debug wip funnel stream model (#9169) 2 years ago
serve_test.go tailscale/cli: add interactive flow for enabling Funnel 2 years ago
store.go ipn: avoid useless no-op WriteState calls 2 years ago
store_test.go ipn: avoid useless no-op WriteState calls 2 years ago