DescriptionMojo Bindings: Fix lock-order inversion in associated controllers
The two AssociatedGroupController implementations we have both own a lock
which is acquired during message dispatch, among other operations.
In the EDK layer a Watcher lock is also acquired further up the stack.
Because sending a message may indirectly require notifying the same
Watcher lock, it must never be true that the AssociatedGroupController's
lock is held while its pipe is written to.
This fixes the lock-order inversion resulting from the
fact that pipe control messages were being sent under lock, and removes
the associated TSAN suppression.
BUG=663557
TBR=glider@chromium.org
R=yzshen@chromium.org
Committed: https://crrev.com/58909542197b704efe10526c169e4b502f799b57
Cr-Commit-Position: refs/heads/master@{#431331}
Patch Set 1 #Patch Set 2 : . #
Total comments: 2
Patch Set 3 : . #Patch Set 4 : . #
Messages
Total messages: 21 (15 generated)
|