diff options
author | Jamie Liu <jamieliu@google.com> | 2021-02-24 18:14:32 -0800 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2021-02-24 18:16:51 -0800 |
commit | 0462dfe9f8bfbe482912caeb2bd636ec005b2b9e (patch) | |
tree | c768b59f8f99a11d3e0585337eea1a608d5d355e /pkg/p9/buffer.go | |
parent | 1d2975ffbe0e32ebcd2fe9307544799b2f9ae632 (diff) |
Use sync.Gate in p9.connState.
sync.WaitGroup.Add(positive delta) is illegal if the WaitGroup counter is zero
and WaitGroup.Wait() may be called concurrently. This is problematic for
p9.connState.pendingWg, which counts inflight requests (so transitions from
zero are normal) and is waited-upon when receiving from the underlying Unix
domain socket returns an error, e.g. during connection shutdown. (Even if the
socket has been closed, new requests can still be concurrently received via
flipcall channels.)
PiperOrigin-RevId: 359416057
Diffstat (limited to 'pkg/p9/buffer.go')
0 files changed, 0 insertions, 0 deletions