DescriptionPPAPI: Fix GetBrowserInterface race conditions
- Previously, we had an unguarded bool flag for whether an interface lookup had been logged to UMA. Now each InterfaceInfo has a lock+flag. Should be near-zero contention.
- Previously, PpapiGlobals::GetBrowserSender did lazy creation with no synchronization. Now we create it at process startup and clear it at process shutdown, so there should be no race while the plugin is running.
BUG=413513, 414150
Committed: https://crrev.com/d1b2c8f719b0ab471a476bf53911a3657bb4c06a
Cr-Commit-Position: refs/heads/master@{#294715}
Committed: https://crrev.com/fee3a512a9456e0398ea8369496ac1c365fb3574
Cr-Commit-Position: refs/heads/master@{#295551}
Patch Set 1 #Patch Set 2 : lockless approach #
Total comments: 6
Patch Set 3 : use lock-per-interface #Patch Set 4 : make InterfaceInfo a class #Patch Set 5 : fix misspelling #
Total comments: 2
Patch Set 6 : minimize critical section #Patch Set 7 : Don't dereference NULL at plugin shutdown. #Patch Set 8 : Review comments #
Messages
Total messages: 24 (6 generated)
|